Кент Рейсдорф. BORLAND C++BUILDER. Раздел 2

Кент Рейсдорф. BORLAND C++BUILDER. Страница 208

Свойство Name

Свойство Name имеет для компонентов жизненно важное значение. Как упоминалось ранее, при помещении компонента в форму С+-l-Builder пере­ходит в фоновый режим, пока вы обдумываете свое следующее действие. Все, что C++Builder делает при этом — создает указатель на компонент и использует свойство Name в качестве имени переменной. Предположим, на­пример, что вы поместили компонент Edit в форму и изменили его свойство Name на MyEdit. В этом случае С-f+Builder поместит следующую строку в заголовочный файл формы:

TEdit* MyEdit;

После запуска приложения C++Builder создаст экземпляр класса TEdit, на который будет ссылаться указатель MyEdit. Вы можете использовать этот указатель для обращения к компоненту во время выполнения программы. Чтобы ввести текст в элемент редактирования, вам нужно сделать следующее:

MyEdit->Text = "Jenna Lynn";

C++Builder использует значение свойства Name также для образования имен обработчиков событий. Допустим, вы хотите обрабатывать событие On­Change компонента Edit. Обычно вы дважды щелкаете в столбце Value рядом с событием OnChange, чтобы C++Builder сгенерировал обработчик события. C++Builder будет использовать для этой функции имя по умолчанию, осно­ванное на значении свойства Name и имени обрабатываемого события. В нашем случае C++Builder создаст функцию с именем MyEditChange().

Вы можете изменять свойство Name в любое время, но только при ус­ловии, что вы делаете это через инспектор объектов. Когда при разработке программы вы изменяете свойство Name некоторого компонента, C++Builder просматривает весь код, который он до этого создал, и изменяет имя ука­зателя и имена всех функций-обработчиков событий.

Если в этом же примере вы измените свойство Name элемента редакти­рования со значения MyEdit на FirstName, то C++Builder даст указателю имя FirstName, а обработчик события OnChange получит имя FirstNameChange(). Все это будет выполнено автоматически; вам нужно толь­ко изменить свойство Name и положиться в остальном на C++Builder.

Web-дизайн (с) 2010 All rights reserved