Инспектор объектов (Object Inspector) 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Инспектор объектов (Object Inspector)



 

Этот инструмент представляет собой отдельное окно, где можно в период проектирования программы устанавливать значения свойств и событий объектов (Properties & Events). Информация в Инспекторе объектов меняется в зависимости от компонента, выбранного на форме. Его вид и поведение можно менять с помощью Инспектора объектов.

Инспектор объектов состоит из двух страниц, каждую из которых можно использовать для определения поведения данного компонента. Первая страница - это список свойств, вторая - список событий. Например, можно изменить имя и размер компонента TLabel, изменяя свойства Caption, Left, Top, Height, и Width.

Можно использовать закладки в верхней части Инспектора объектов для переключения между страницами свойств и событий. Страница событий связана с Редактором кода программы: при двойном щелчке мышкой на строчке напротив названия интересующего события в определенном компоненте заголовок метода - обработчика события автоматически запишется в Редактор кода., При этом сам редактор немедленно станет активным, что позволит редактировать текст метода.

Свойство является важным атрибутом компонента. Для пользователя свойство выглядит как простое поле какой-либо структуры, содержащее некоторое значение. Однако в отличие от «просто» поля любое изменение значения некоторого свойства любого компонента сразу приводит к изменению визуального представления этого компонента. Свойства служат двум главным целям: во-первых, они определяют внешний вид формы или компонента; во-вторых, - поведение формы или компонента.

Существует несколько типов свойств в зависимости от их «природы».

· Простые свойства - это те, значения которых являются числами или строками. Например, свойства Left и Top принимают целые значения, определяющие положение левого верхнего угла компонента или формы. Свойства Caption и Name представляют собой строки и определяют заголовок и имя компонента или формы.

· Перечислимые свойства - это те, которые могут принимать значения из предопределенного набора (списка). Простейший пример - это свойство типа bool, которое может принимать значения true или false.

· Вложенные свойства - это те, которые содержат вложенные значения (или объекты). Инспектор объектов изображает знак «+» слева от названия таких свойств. Имеется два вида таких свойств: множества и комбинированные значения. Множества изображаются квадратными скобками. Если множество пусто, оно отображается как [].

Вложенные свойства вида «множество» обычно имеют значения типа bool. Наиболее распространенным примером такого свойства является свойство Style с вложенным множеством булевых значений. Комбинированные значения отображаются в Инспекторе объектов как коллекция некоторых величин, каждый со своим типом данных (рис. 11).

Рис. 11. Отображение комбинированных значений вложенных свойств

Некоторые свойства, например, Font, для изменения своих значений имеют возможность вызвать диалоговое окно. Для этого достаточно щелкнуть по маленькой кнопке с тремя точками в правой части строки Инспектора объектов, показывающей данное свойство.

CBuilder позволяет легко манипулировать свойствами компонент как в режиме проектирования (design time), так и в режиме выполнения программы (run time).

В режиме проектирования манипулирование свойствами осуществляется с помощью Дизайнера форм или на страничке Properties Инспектора объектов.

Например, для того, чтобы изменить свойства Height (высоту) и Width (ширину) кнопки, достаточно «зацепить» мышкой за любой ее угол и раздвинуть до нужного представления. Того же результата можно добиться, просто подставив новые значения свойств Height и Width в окне Инспектора объектов.

Все изменения значений свойств компонент в режиме выполнения должны осуществляться путем прямой записи строк кода на языке C. Все, что нужно сделать для изменения какого-либо свойства, - это написать простую строчку кода аналогично следующей:

MyComponent->Width= 35;

Вышеприведенная строка устанавливает ширину компонента равной значению 35. Если свойство Width компонента еще не было равно 35 к моменту выполнения данной строки программы, то компонент визуально изменит свою ширину.

Если изменить свойства Width и Height компонента Button, то кнопка соответствующим образом изменит свои ширину и высоту.

Можно ввести элементы в список компонента ComboBox как в режиме проектирования, так и при выполнении программы. При этом в режиме проектирования можно просто ввести нужные элементы в список Items, щелкнув маленькую кнопку с тремя точками в правой части строки Инспектора Объектов, показывающей данное свойство.

Появится диалоговое окно текстового редактора (String List Editor), в котором и вводятся элементы:

 

7.2 Формы, модули и метод разработки «Two-Way Tools»

 

Формы - это объекты, в которые помещаются другие объекты для создания пользовательского интерфейса приложения. Модули состоят из кода, который реализует функционирование приложения, обработчики событий для форм и их компонент.

Информация о формах хранится в трех типах файлов - .dfm (образ формы), .h (заголовочный файл, хранит объявления классов, соответствующих классам и другим компонентам) и .cpp (программный код обработчиков событий).

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

Такая синхронизация и делает CBuilder two-way-инструментом, обеспечивая полное соответствие между кодом и визуальным представлением. Например, предположим, что добавляется описание поведения формы (соответствующий обработчик событий), чтобы показывать окно сообщения по нажатию кнопки. Такое описание появляется, если дважды щелкнуть мышкой непосредственно на объект Button в форме или на событие OnClick на странице Events в Инспекторе объектов. В любом случае CBuilder в файле .cpp создаст заголовок метода, куда можно добавить код.

void __fastcall TPr_Form::Button5Click(TObject *Sender)

{…}

Cоздавая этот код, CBuilder автоматически корректирует описание объекта TPr_Form, добавляя заголовок процедуры Button5Click в файл .h.

class TPr_Form: public TForm

{__published: // IDE-managed Components

TDBGrid *DBGrid1;

TButton *Button1;

TButton *Button2;

TButton *Button3;

TButton *Button4;

TButton *Button5;

void __fastcall Button1Click(TObject *Sender);

void __fastcall FormShow(TObject *Sender);

void __fastcall FormClose(TObject *Sender, TCloseAction &Action);

void __fastcall Button2Click(TObject *Sender);

void __fastcall Button3Click(TObject *Sender);

void __fastcall Button4Click(TObject *Sender);

void __fastcall Button5Click(TObject *Sender);

private: // User declarations

public: // User declarations

__fastcall TPr_Form(TComponent* Owner);

};

Чтобы отобразить неактивную форму, следует использовать метод ShowModal. Этот метод отображает форму и делает ее модальной, что позволяет работать с элементами управления на этой форме. При закрытии формы, активизированной с помощью метода ShowModal, свойство формы ModalResult должно получить значение из следующего набора: mrNone, mrOK, mrCancel, mrYes, mrNo. При этом форма закрывается, и значение ModalResult передается как результат метода ShowModal.

Для закрытия формы можно также использовать метод Close.

Событие OnActivate происходит, когда форма становится активной.

Прежде чем сослаться на свойство или на метод формы из метода другой формы (в предположении, что обе формы принадлежат одному проекту), необходимо выполнить пункт меню File, Include Unit Hd r (это приводит к добавлению в файл .h директив #include).

Палитра компонент

Палитра компонент использует постраничную группировку объектов. Вверху палитры находится набор закладок - Standard, Additional, Dialogs и т.д. Щелкнув мышью по одной из закладок, можно перейти на следующую страницу Палитры компонент:

 

 

 

 

Поскольку в CBuilder программа строится визуальным образом, то все компоненты имеют свои пиктограммы, когда они размещаются на поле формы, для того, чтобы можно было ими соответствующим образом оперировать. Но у работающей программы видимыми остаются только визуальные компоненты.

Перечислим основные компоненты страницы Standard идадим некоторые пояснения.

TMainMenu позволяет поместить главное меню в программу. Создание меню включает три шага:

· Помещение TMainMenu на форму.

· Вызов Дизайнера меню через свойство Items в Инспекторе объектов.

· Определение пунктов меню в Дизайнере меню.

 

Работа с Дизайнером меню.

Страница Events при работе с Дизайнером меню

TLabel служит для отображения текста на экране. Текст задается в качестве значения свойства Caption. Для изменения шрифта и цвета текста существует свойство Font.

TEdit - поле ввода. Эта компонента может быть использована для отображения короткого фрагмента текста и позволяет пользователю вводить текст (он представляет собой значение свойства Text) во время выполнения программы.

TButton (обычная кнопка) позволяет выполнить какие-либо действия при нажатии кнопки во время выполнения программы. Поместив объект типа TButton на форму, по двойному щелчку можно создать заготовку обработчика события нажатия кнопки. Далее нужно заполнить заготовку кодом (подчеркнуто то, что нужно написать вручную):

void __fastcall TPr_Form::Button2Click(TObject *Sender)

{ DM->PR->Insert();

Edit_PR_Form->ShowModal(); }

TCheckBox - кнопка с независимой фиксацией, которая может быть включена или выключена. Состояние объекта определяется значением свойства Checked типа Boolean. При нажатии этой кнопки происходит событие OnClick, в результате которого значение свойства Checked меняется на противоположное. Текст, отображаемый рядом с кнопкой, - значение свойства Caption. Состояние кнопки - включена она или выключена - определяется значением свойства State, которое может быть cbUnchecked или cbChecked.

TGroupBox - компонента для размещения других элементов управления. Заголовок окна - значение свойства Caption.

TRadioButton (кнопка с зависимой фиксацией) позволяет выбрать только одну опцию из нескольких. Как правило, таких компонент несколько. Текст, связанный с кнопкой, - значение свойства Caption. При выборе кнопки изменяется значение ее свойства Checked и происходит событие OnClick.

TRadioGroup -область, содержащая несколько объектов типа TRadioButton. Кнопки представляют собой значения свойства Items, которое имеет тип TStrings, упоминавшийсяранее. Значение этого свойства можно менять как в период проектирования с помощью редактора строк, так и в период выполнения с помощью использования методов и свойств объекта типа TStrings. Значение свойства ItemIndex определяет, какая кнопка выбрана в данный момент (их нумерация в группе начинается с 0):

 

 



Поделиться:


Последнее изменение этой страницы: 2016-12-16; просмотров: 2303; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.138.179.119 (0.029 с.)