Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

C _Учебник_МОНУ

.pdf
Скачиваний:
199
Добавлен:
12.05.2015
Размер:
11.12 Mб
Скачать

Середовище програмування C++ Builder

39

у застосуванні компоненти з різних сторінок палітри компонентів, на більшість з яких є посилання у наступних розділах підручника.

Таблиця 2.4

Деякі додаткові компоненти

Кнопка

Назва

Призначення

Сторінка

 

 

 

 

 

TabControl

Сторінки із закладками, котрі може обирати

Win32

 

(Сторінка

користувач. Кількість закладок і надписи

 

 

із закладкою)

на них задаються властивістю Tabs.

 

 

 

Автоматичне оновлення вмісту сторінок

 

 

 

при перемиканні не відбувається, тому

 

 

 

програміст має робити це самостійно

 

 

PageControl

Сторінки із закладками для економії місця,

Win32

 

(Багато-

якими можна керувати. Створення нових

 

 

сторінкове

сторінок, редагування та вилучення

 

 

вікно)

виконується через контекстне меню

 

 

 

клацанням правої кнопки миші та обранням

 

 

 

відповідної команди. Властивість Caption

 

 

 

кожної сторінки задає надпис на закладці

 

 

ImageList

Список зображень однакового розміру

Win32

 

(Список

форматів BMP та ICO. Долучення нових зо-

 

 

зображень)

бражень і редагування списку зображень

 

 

 

здійснюється через

 

 

 

відповідне вікно, відкриване подвійним

 

 

 

клацанням по компонентові

 

 

RichEdit

Багаторядкове вікно для форматування

Win32

 

(Вікно

тексту в форматі RTF, яке дозволяє

 

 

редактора

задавати різне форматування різних

 

 

у форматі RTF)

фрагментів тексту

 

 

DateTimePicker

Календар, який розкривається і дозволяє

Win32

 

(Введення

обирати дату чи час. Властивості Dateй Time

 

 

дати і часу)

містять значення дати й часу відповідно.

 

 

 

Властивість Kind дозволяє обрати режим

 

 

 

роботи чи то з датою, чи з часом

 

 

MonthCalendar

Дозволяє обирати дату з календаря.

Win32

 

(Введення дати)

Властивість Date містить обрану дату

 

 

 

 

 

 

ProgressBar

Прямокутний індикатор, який зафарбовується

Win32

 

(Індикатор)

зліва направо заданим кольором у міру

 

 

 

виконування певного процесу в програмі.

 

 

 

Властивості Min та Мах задають інтервал

 

 

 

значень індикатора. Властивість Step задає

 

 

 

крок змінювання значень позиції індикатора

 

 

 

(властивість Position)

 

 

40

 

Розділ 2

 

 

 

 

 

Продовження табл. 2.4

 

 

 

 

Кнопка

Назва

Призначення

Сторінка

 

 

 

 

 

 

 

TrackBar

Шкала з позначками й регулятором поточної

Win32

 

 

(Полоса з

позиції (варіант лінійки прокручування).

 

 

 

 

регулятором)

Властивості Minта Махзадають інтервал значень

 

 

 

 

 

шкали, причому властивість Position показує

 

 

 

 

 

поточну позицію регулятора всередині заданого

 

 

 

 

 

інтервалу. Кількість зображених позначок

 

 

 

 

 

специфікує властивість Frequency.

 

 

 

 

 

Те, на скільки позначок має пересунутись

 

 

 

 

 

регулятор, коли користувач клацне мишею на

 

 

 

 

 

самій шкалі (по обидва боки від регулятора) чи

 

 

 

 

 

натисне клавіші PageUp та PageDown, задає

 

 

 

 

 

значення властивості PageSize. Вигляд шкали

 

 

 

 

 

можна змінювати за допомогою властивостей

 

 

 

 

 

TickStyle та TickMarks

 

 

 

 

StatusBar

Набір панелей у вигляді смуги стану у стилі

Win32

 

 

 

Windows. Зазвичай ця смуга розміщується внизу

 

 

 

 

 

форми. Властивість SimplePanelвизначає

 

 

 

 

 

наявність декількох панелей. Значення true цієї

 

 

 

 

 

властивості означає, що уся смуга є єдиною

 

 

 

 

 

панеллю, текст якої задається властивістю

 

 

 

 

 

SimpleText. Значення false зазначає набір

 

 

 

 

 

панелей, які задаються властивістю Panels.

 

 

 

 

 

Текст таких панелей задається командою:

 

 

 

 

 

StatusBar1->Panels->Items[0]->Text="текст";

 

 

 

 

 

де 0 – номер самої першої панелі

 

 

 

 

ToolBar

Контейнер для створення інструментальних

Win32

 

 

 

панелей. Для розміщення на панелі інструментів

 

 

 

 

 

кнопок ToolButton треба з контекстного меню

 

 

 

 

 

обрати команду New Button (Нова кнопка) чи

 

 

 

 

 

NewSeparator (Новий роздільник). Піктограми

 

 

 

 

 

на кнопках можна задавати зі списку зображень

 

 

 

 

 

компонента ImageList

 

 

 

 

Timer

Використовується для програмування дій, які

System

 

 

(Таймер)

мають виконуватись з певною періодичністю чи

 

 

 

 

 

то за заданого відтинку часу. Властивість

 

 

 

 

 

Interval задає частоту, з якою має відбуватися

 

 

 

 

 

подія Timer, значення 1000 цієї властивості

 

 

 

 

 

відповідає одній секунді

 

 

 

 

OleContainer

OLE-контейнер для вбудовування і розміщення

System

 

 

(контейнер

на формі OLE-об‟єктів, створених в інших

 

 

 

 

OLE)

програмних додатках

 

 

 

 

Середовище програмування C++ Builder

41

 

 

 

 

Закінчення табл. 2.4

 

 

 

 

Кнопка

Назва

Призначення

Сторінка

 

 

 

 

 

 

 

OpenDialog

Виклик діалогового вікна Windows

Dialogs

 

 

(Відкрити файл)

“Відкрити файл”. Властивість FileName

 

 

 

 

 

зберігає ім‟я файла, а властивість

 

 

 

 

 

InitialDir – обраний шлях до теки

 

 

 

 

 

з файлом

 

 

 

 

SaveDialog

Виклик діалогового вікна “Зберегти

Dialogs

 

 

(Зберегти файл)

файл”. Властивості є подібні

 

 

 

 

 

до компонента OpenDialog

 

 

 

 

OpenPictureDialog

Реалізує спеціальне вікно вибору

Dialogs

 

 

(Відкрити рисунок)

графічних файлів. Властивості є подібні

 

 

 

 

 

до компонента OpenDialog

 

 

 

 

SavePictureDialog

Реалізує спеціальне вікно зберігання

Dialogs

 

 

(Зберегти рисунок)

графічних файлів. Властивості є подібні

 

 

 

 

 

до компонента OpenDialog

 

 

Усі компоненти можна поділити на дві групи: видимі (візуальні) і невидимі (невізуальні). Під час виконання програми візуальні компоненти (наприклад, кнопки Button, надписи Label тощо) видно на формі точно так само, як і при проектуванні форми. Невізуальні компоненти (наприклад, діалоги роботи із файлами OpenDialog та SaveDialog, системний таймер Timer, компоненти для роботи з базами даних: Table, DataSource, Query, ADOConnection та багато ін-

ших) є видимі як піктограми на формі під час проектування, але їх не видно під час виконання. Ці компоненти мають певну функціональність (наприклад, забезпечують доступ до даних, викликають стандартні діалоги Windows та ін.).

Якщо обрати будь-який компонент з палітри та розмістити на формі, його властивості та події автоматично покаже інспектор об‟єктів.

Вікно інспектора об’єктів (Object Inspector) розташоване ліворуч вікна форми. Інспектор об‟єктів забезпечує простий і зручний інтерфейс для змінювання значень властивостей компонентів і керування подіями, на які реагують об‟єкти. Інспектор об‟єктів має дві сторінки: Properties (властивості) і Events (події). Властивості компонентів (назва, колір, розмір тощо) задаються на сторінці Properties, а події (натискання клавіш миші чи її рух, натискання клавіш клавіатури, вибір пункту меню тощо) на сторінці Events у вікні Object Inspector (рис. 2.5). Для того щоб у вікні інспектора об‟єктів було відображено атрибути певного об‟єкта, слід виокремити цей об‟єкт, клацнувши на ньому лівою кнопкою миші, або обрати потрібний об‟єкт із наявних на формі зі списку у верхній частині інспектора об‟єктів.

Сторінка властивостей Properties

На цій сторінці (рис. 2.5, а) відображаються для виокремленого об‟єкта основні властивості та їхні значення. Властивості є атрибутами компонента, що визначають його зовнішній вигляд і поведінку.

42

Розділ 2

С е л е к т о р о б ‟ є к т і в

 

Сторінки властивостей і подій

Редаговані властивості компонента Доступні для компонента події

а

б

Рис. 2.5. Вікна інспектора об‟єктів:

а – сторінка властивостей Properties; б – сторінка подій Events

Значення властивостей можна змінювати. Приміром, якщо клацнути на формі, а тоді обрати її властивість Caption, то у вікні зі значенням цієї властивості Form1 можна ввести новий текст, який і стане заголовком форми. Властивість Color має список можливих значень, який можна відкрити, клацнувши на кнопці у вікні цієї властивості. Якщо обрати колір clRed, то форма чи виокремлений об‟єкт набуде червоного кольору. Усю палітру кольорів можна побачити, двічі клацнувши мишею у полі значення кольору.

Деякі з властивостей мають складну структуру. Клацання миші у полі значень властивості призводить до появи у цьому полі кнопки . Після натиснення цієї кнопки відкриється діалогове вікно, котре і дозволяє встановлювати нові значення цієї властивості. Наприклад, властивість Font дозволяє задавати атрибути тексту: шрифт, розмір, стиль та колір літер.

Усі властивості мають за замовчуванням певні значення при створенні компонента. Приміром, для компонента Label властивість AutoSize (Автомасштаб) має значення true (істина) без додаткових вказівок. Це означає, що розмір компонента підлаштовується під розмір його вмісту. Але можна задавати потрібний розмір за допомогою властивостей Width (довжина) та Height (висота), якщо при цьому змінити значення властивості AutoSize на false(хибність).

Якщо на формі треба розмістити кілька однотипних компонентів, то за замовчуванням їхніми іменами буде назва відповідного компонента, наприкінці якого зазначається його порядковий номер на формі. Наприклад, Button1,

Button2, … чи Memo1, Memo2, …

Інспектор об‟єктів відображає опубліковані (published) властивості компонентів. Крім published-властивостей, компоненти можуть і найчастіше мають загальні (public), опубліковані властивості, які доступні лише під час виконання проекту. Наприклад, для компонента StringGrid властивість звертання до комірок Cells є доступною лише програмно. Задавати нові значення властивостям можна не лише під час проектування форми, а й програмно, написавши відповідний код для видозміни властивостей компонента під час виконання проекту.

Середовище програмування C++ Builder

43

Сторінка подій Events

Ця закладка вікна інспектора об‟єктів показує список подій, розпізнаваних компонентом, і дозволяє визначати реакцію виокремленого компонента на ту чи іншу подію (програмування для операційних систем з графічним користувальницьким інтерфейсом, зокрема, для різних версій Windows передбачає опис реакції проекту на ті чи інші події, а сама операційна система займається постійним опитуванням комп‟ютера з метою виявлення настання якоїсь події). Кожен компонент має свій власний набір можливих подій.

Найбільш поширеними у застосуванні подіями є такі:

OnClick – клацання лівою кнопкою миші на об‟єкті;

OnDblClick – подвійне клацання лівою кнопкою миші на об‟єкті;

OnChange – внесення змін до вмісту об‟єкта;

OnCreate – подія відбувається при створенні форми;

OnActivate – подія відбувається при активації форми;

OnMouseDown – натиснення кнопки миші над компонентом;

OnMouseUp – відпускання кнопки миші над компонентом;

OnMouseMove – переміщення миші над компонентом;

OnKeyPress – натиснення символьної клавіші клавіатури;

OnKeyDown – натиснення будь-якої клавіші клавіатури;

OnKeyUp – відпускання будь-якої клавіші клавіатури;

OnEnter – подія відбувається в момент набуття компонентом фокуса;

OnExit – подія відбувається в момент втрати компонентом фокуса;

OnStartDrag – подія відбувається, коли користувач розпочинає перетягування компонента;

OnDragDrop – подія відбувається в момент відпускання перетягуваного компонента над даним компонентом;

OnEndDrag – подія відбувається в момент завершення перетягування компонента.

Назви подій наведені у лівій колонці сторінки Events. Для того, щоби створити функцію відгуку на певну подію, треба обрати на формі за допомогою миші необхідний компонент, відкрити сторінку подій інспектора об‟єктів і двічі клацнути лівою клавішею миші на колонку поруч з цією подією. При цьому C++ Builder автоматично згенерує шаблон функції відгуку на подію, її прототип запише до відповідного заголовного файла, відкриє редактор коду, в якому покаже текст порожньої функції, і зпозиціонує курсор усередині її операторних дужок { ... } для подальшого введення програмного коду. Наприклад, для події OnClick компонента Button1, розміщеного на формі Form1, шаблон відповідної функції в Unit1.cpp матиме вигляд:

void __fastcall TForm1::Button1Click(TObject *Sender)

{

}

a її заголовок в Unit1.h:

void __fastcall Button1Click(TObject *Sender);

44

Розділ 2

Багато властивостей і методів є притаманні більшості компонентів, приміром: ім‟я, розміри, доступність, видимість тощо. У табл. 2.5 наведено найчастіше уживані властивості, а в табл. 2.6 – методи функціонування компонентів.

Що стосується методів, вони є функціями, пов‟язаними з компонентами, і по суті є частиною цих об‟єктів. Виклик методів і звертання до властивостей компонентів здійснюють за допомогою операції вибору елемента “->”, наприклад:

Edit1->Show();

 

 

Таблиця 2.5

 

Основні властивості стандартних компонентів

 

 

 

Властивість

Пояснення

Компоненти

з такою властивістю

 

 

AutoSize

Автомасштаб: якщо встановити в 1 (true),

Label, Edit, Panel,

 

розмір компонента автоматично адаптується

Image та інші

 

до розміру символів тексту

 

Caption

Надпис

Button, Labelта інші

Color

Колір компонента

Більшість видимих

Count

Кількість рядків списку

Memo, ListBox

Enabled

Доступність до компонента. Визначає, чи

Усі видимі

 

реагує компонент на події, пов‟язані

 

 

з мишею, клавіатурою і таймером. Значення

 

 

false блокує доступ, а сам компонент

 

 

набуває переважно більш світлого кольору

 

Font

Параметри шрифта

Button, Label, Edit,

 

 

Memo та інші

Glyph

Зображення у форматі bmp, яке можна

BitBtn, SpeedButton

 

винести на компонент

 

Height

Висота компонента в пікселях

Усі видимі

 

 

 

ItemIndex

Номер обраного елемента списку.

ListBox

 

Нумерація розпочинається з 0

 

Items

Список можливих значень списку

ListBox, ComboBox,

 

 

MainMenu та інші

Left

Розміщення лівого краю компонента

Усі видимі

 

відносно форми в пікселях. Верхній лівий

 

 

кут форми має координати (0, 0)

 

Lines

Рядки вікна для введення чи редагування

Memo, RichEdit

 

тексту. Нумерація рядків розпочинається з 0

 

Name

Ім‟я компонента

Усі

ScrollBars

Встановлення лінійок прокручування

Memo, StringGrid

 

у вікні Memo. Можливі значення цієї

та інші

 

властивості: None, Vertical, Gorizontal,

 

 

Both (відсутні, вертикальна, горизонтальна,

 

 

обидві)

 

 

 

 

 

Середовище програмування C++ Builder

45

 

 

 

 

 

 

 

Закінчення табл. 2.5

 

 

 

 

 

 

 

Властивість

 

 

Пояснення

Компоненти

 

 

з такою властивістю

 

 

 

 

 

 

 

Sorted

 

Якщо встановити в 1 (true), усі елементи

ListBox, ComboBox

 

 

 

списку буде відсортовано за зростанням

 

 

 

 

 

 

 

 

 

 

Text

 

Текст у вікні редагування

Edit, ComboBoxта інші

 

Top

 

Розміщення верхнього краю компонента

Усі видимі

 

 

 

відносно форми в пікселях. Верхній лівий

 

 

 

 

 

кут форми має координати (0, 0)

 

 

 

 

 

 

 

 

 

 

Visible

 

Видимість: якщо встановити в 0 (false),

Усі видимі

 

 

 

компонент стане невидимим на формі

 

 

 

 

 

 

 

 

 

 

Width

 

Ширина компонента в пікселях

Усі видимі

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблиця 2.6

 

 

 

Основні методи стандартних компонентів

 

 

 

 

 

 

 

 

 

 

 

 

 

Для яких

 

Метод

 

Пояснення

 

компонентів

 

 

 

 

 

 

застосовується

int Add

 

Долучення рядка Sу кінець списку.

 

Memo, ListBox,

(AnsiString S)

Метод повертає індекс цього рядка,

 

RadioGroup,

 

 

 

 

наприклад:

 

RichEdit та інші

 

 

 

 

int n=Memo1->Lines->Add(S);

 

 

 

 

 

 

 

 

Clear()

 

Очищення вікна

 

Edit, Memo та інші

Delete(int n)

Вилучення рядка з номером n,

 

Memo, ListBox,

 

 

 

 

наприклад:

 

RadioGroup,

 

 

 

 

Memo1->Lines->Delete(n);

 

RichEdit та інші

Hide()

 

Приховання компонента

 

Більшість видимих

Insert(int n,

Вставлення рядка S у позицію n,

 

Memo, ListBox,

AnsiString S)

наприклад:

 

RadioGroup,

 

 

 

 

Memo1->Lines->Insert(n, S);

 

RichEdit та інші

LoadFromFile

Вивантаження вмісту із зазначеного

Memo, RichEdit та інші

(AnsiString fname)

файла до поля компонента

 

 

 

SaveToFile

 

Зберігання вмісту компонента

 

Memo, RichEdit та інші

(AnsiString fname)

у файлі із зазначеним ім‟ям fname

 

 

 

SelectAll()

 

Виокремлення всього тексту

 

Memo, RichEdit та інші

SetFocus()

 

Встановлення фокуса (курсора)

 

Більшість видимих

 

 

 

 

на цей компонент

 

 

 

SetText(char *S)

Долучення тексту S у поточну

 

Memo та інші

 

 

 

 

позицію курсора, наприклад:

 

 

 

 

 

 

 

Memo1->Lines->SetText(S);

 

 

 

 

 

 

 

 

Show()

 

Показ прихованого компонента

 

Більшість видимих

46 Розділ 2

2.1.2 Структура С++ Builder-проекту

Програма на С++ складається з оголошень (змінних, констант, типів, класів, функцій) та опису функцій. З-посеред функцій головною є функція main для консольних додатків (яка працює з WIN32) чи то WinMain – для додатків Windows. Головна функція виконується після початку роботи програми. Щоб побачити текст головного файла, слід виконати команду Project/View Source.

Програму в С++ Builder частіше називають проектом чи додатком. Зазвичай кожен проект складається з кількох файлів, основними з яких є:

головний файл програми, який поєднує всі файли проекту. Він створюється автоматично і, за замовчуванням, його ім‟я – Project1.bpr;

файли форми з інформацією про властивості усіх компонентів на цих формах. Їхні імена, за замовчуванням, – Unit1.dfm, Unit2.dfm, …;

файли реалізації модуля з програмним кодом, так звані модулі. Це файли, в яких прописуються тексти функції опрацювання подій для компонентів форми. Імена файлів реалізації, за замовчуванням, – Unit1.cpp, Unit2.cpp, …;

заголовний файл с розширенням .h, який зберігає оголошення класу цієї форми. Весь основний текст цього файла формується автоматично, але іноді виникає потреба долучати до нього оголошення функцій, типів, констант та змінних користувача. Відкрити цей файл у редакторі кодів можна, клацнувши у вікні з файлом реалізації модуля правою кнопкою миші та обравши з контекстного меню команду Open Sourse/Header File або скориставшись клавіатурною комбінацією <Ctrl> + <F6>.

Імена файла реалізації (модуля) і заголовного файла збігаються. Якщо модуль пов‟язаний з формою, то його ім‟я збігається і з ім‟ям файла форми (з розширенням dfm). Це ім‟я задають за першого зберігання проекту. За замовчуванням C++ Builder пропонує ім‟я Unit1.

Заголовний файл при створенні проекту має вигляд:

#ifndef Unit1H

#define Unit1H

//--------------------------------------------------------

#include <Classes.hpp> #include <Controls.hpp> #include <StdCtrls.hpp> #include <Forms.hpp>

//Тут можуть розміщуватися додаткові директиви препроцесора

//(зокрема include), які долучають потрібні заголовні файли

//--------------------------------------------------------

class TForm1 : public TForm// Оголошення класу форми TForm1

{ __published: // IDE-managed Components

// Розташовані на формі компоненти

TLabel *Label1;

TButton *Button1;

void __fastcall Button1Click(TObject *Sender); private: // User declarations

//Закритий розділ класу. Тут можуть розміщуватися оголошення типів, змінних,

//функцій, які входять до класу форми, але є недоступні для інших модулів

 

Середовище програмування C++ Builder

47

public:

// User declarations

 

//Відкритий розділ класу. Тут можуть розміщуватися оголошення типів, змінних,

//функцій, які входять до класу форми, доступні для інших модулів

__fastcall TForm1(TComponent* Owner);

}; //--------------------------------------------------------

extern PACKAGE TForm1 *Form1;

//Тут можуть розміщуватися оголошення типів, змінних, функцій,

//котрі не долучаються до класу форми; доступ до них з інших блоків

//є можливий лише за дотримання певних додаткових умов

#endif

Розпочинається заголовний файл рядками, перший символ яких є #. З цього символу розпочинаються директиви препроцесора. З-посеред них найбільш важливою директивою є include, яка долучає до модуля потрібний файл. Більш докладно заголовні файли розглянуто у розд. 9. Приміром, якщо в програмі використовуватимуться математичні функції, слід долучити відповідну математичну бібліотеку, тобто власноруч прописати директиви:

#include <math.h> // Долучення заголовного файла math.h #include <Math.hpp> // Долучення заголовного файла Math.hpp

Після директив препроцесора у заголовному файлі йде опис класу форми

TForm1, в якому розділ __published заповнюється автоматично при проектуванні форми. У вищенаведеному прикладі оголошено вказівники на два компоненти: Label1 класу TLabel та Button1 класу TButton. Також оголошено функцію Button1Click – програмний відгук на подію натискання кнопки Button1. Розділи private та public заповнюються за потреби автором програми. Всі об‟єкти, оголошені у розділі public, будуть доступними для інших класів та модулів. Те, що оголошено у розділі private, є доступним лише у межах відповідного модуля.

Нижче за розділом PACKAGE можна розмістити оголошення типів, змінних, функцій, доступ до яких буде можливим і з інших модулів, але вони не долучатимуться до класу форми.

Файли реалізації (cpp-файли) є основою проектів у С++. Вони містять програмний код усіх функцій, оголошених у відповідному заголовному файлі. Окрім того, у cpp-файлі можна записувати функції, прототипи яких є відсутні у h-файлі, однак їхня видимість у такому разі обмежується цим cpp-файлом.

Розпочинається cpp-файл директивою препроцесора #include <vcl.h>, яка долучає відповідний h-файл з описом класів бібліотеки компонентів. За нею розміщена директива #pragma hdrstop, призначена для обмеження списку заголовних файлів, доступних для попередньої компіляції.

Розглянемо текст файла реалізації:

#include <vcl.h> #pragma hdrstop #include "Unit1.h"

//--------------------------------------------------------

#pragma package(smart_init) #pragma resource "*.dfm"

48

Розділ 2

//Тут можуть розміщуватися додаткові директиви препроцесора

//(зокрема include), які не долучаються до файла автоматично.

//-------------------------------------------------------

TForm1 *Form1; // Оголошення класу форми TForm1

//--------------------------------------------------------

//Виклик конструктора форми Form1

__fastcall TForm1::TForm1(TComponent* Owner)

:TForm(Owner)

{// Тут можна розмістити команди,

//які мають виконуватися при створенні форми.

}

//Тут можуть розміщуватися глобальні оголошення типів, змінних,

//доступ до яких є можливий з будь-якої функції цього модуля.

//Окрім того, тут має бути прописано реалізації всіх функцій,

//оголошених у заголовному файлі, а також може бути

//прописано реалізації функцій, не оголошених раніш.

//--------------------------------------------------------

//Приклад реалізації функції, яка здійснюватиме закриття форми,

//при натисненні лівої кнопки миші на компоненті Button1.

void __fastcall TForm1::Button1Click(TObject *Sender) { Close();

}

Звернімо увагу на те, що фігурні та круглі дужки мають у С++ різне призначення. По-перше, у круглих дужках записуються параметри функцій, а, по-друге, круглі дужки використовуються за потреби при записуванні арифметичних виразів. Фігурні дужки називають операторними; у C++ вони є аналогом begin/end інших мов. Відкритою фігурною ({) дужкою розпочинається кожна функція, у тому числі й функції відгуку на події, а закрита фігурна дужка

(}) ставиться після останньої команди функції. Окрім того, фігурні дужки використовуються всередині функцій для поєднування групи команд відносно заданої команди, приміром якщо в циклі слід виконувати понад одну команду.

Примітка. C++ Builder надає зручну можливість перевірити чи є закритою та чи інша фігурна дужка. Для цього треба підвести до неї курсор і натиснути <Alt> + <[>. Якщо вона є закритою, то курсор переміститься до відповідної закритої дужки.

2.1.3Послідовність створювання програмного проекту

вC++ Builder

Створювання програмних проектів у C++ Builder передбачає створення форми, розміщування на ній потрібних компонентів, визначення їхніх властивостей та створювання програмних відгуків на задані дії.

Послідовність роботи може бути такою:

запустити C++ Builder. При запуску автоматично створюється новий проект. Якщо C++ Builder вже працює для створення нового проекту слід з головного меню обрати опцію File/New Application;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]