Кент Рейсдорф. BORLAND C++BUILDER. Раздел 2
Кент Рейсдорф. BORLAND C++BUILDER. Страница 141
10. Щелкните на главной форме. Обратите внимание, что вторая форма теперь закрыта главной формой. Дважды щелкните на кнопке Show Form 2. На экране появится окно редактора кода и курсор будет размещен как раз там, где вам нужно начинать ввод текста.
Рис. 6.7
Вид формы к этому моменту
11. Введите текст, приведенный ниже (вам нужно набрать только одну строку):
void fastcall TMainForm::ShowForm2Click(TObject *Sender)
{
SecondForm->ShowModal();
}
12. Запустите программу.
Вы получили сообщение об ошибке Undefined symbol 'SecondForm' (Не определено обозначение 'SecondForm'). Странно... SecondForm должно быть правильным именем, ведь именно это имя мы дали второй форме... Дайте подумать... Ага! Вспомните, что у нас есть два исходных файла с соответствующими заголовками. Но в модуле MainForm нет объявления переменной SecondForm (которая является указателем на экземпляр класса TSecondForm). Мы должны указать, где расположено объявление класса. (Для этого нужно включить заголовочный файл для SecondForm в исходный файл MainForm с помощью директивы #include, см. День 2, «Операторы управления и структуры в Си++».) Переключитесь в окно редактора кода и щелкните на вкладке Main.cpp для отображения модуля главной формы. Перейдите к началу файла. Первые несколько строк должны выглядеть следующим образом:
Вы видите, что сюда включен заголовочный файл Main.h, но нет файла Second.h, потому что мы не давали указания C++Builder включить этот файл. Давайте сделаем это сейчас.
1. Выберите в главном меню пункт File | Include Unit Hdr. На экране появится диалоговое окно Include Unit, показанное на рис. 6.8.
2. Перед вами находится список доступных модулей. В данном случае единственным модулем в списке является Second. Щелкните на имени Second, а затем на кнопке ОК, чтобы закрыть диалоговое окно.