Часть полного текста документа:Построение многооконных приложений для Windows Владимир Коробицын Календарь. Генератор звуковых волн После запуска C++ Builder в вашем распоряжении имеется только одна форма Form1 - стартовая форма будущего приложения для Windows. Если вы хотите построить приложение, использующее в своей работе, например, три окна - кликните мышью на значок New Form (Новая форма) два раза. Вы получили две новые формы: Form2 и Form3. Такого же результата можно добиться по-другому. А именно в меню File выберите команду New, а затем Form. Во время работы приложения на экране могут одновременно отображаться все три формы, или любые две, либо любая одна из них. Для того чтобы из любой формы можно было управлять остальными формами, их файлы Unit1.h, Unit2.h и Unit3.h необходимо связать. В заголовочной части файла Unit1.cpp для первой формы нужно дописать директивы: #include "Unit2.h" //включить вторую форму в проект #include "Unit3.h" //включить третью форму в проект Расположите их под уже имеющейся директивой, которую сгенерировала сама среда разработки во время создания первой формы: #include "Unit1.h" //включить первую форму в проект Для второй и третьей форм сделать аналогичные записи в файлах Unit2.cpp и Unit3.cpp. После этого формы начнут "чувствовать" друг друга - станет возможно управление из любой формы оставшимися другими. Если в процессе разработки многооконного приложения какая-либо из форм окажется недоступной, для ее появления на экране выберите в меню View (Просмотр) команду Forms... (Формы) или с клавиатуры отработайте клавишный аккорд Shift+F12. Можно просто кликнуть на соответствующий значок с изображением нескольких форм. На базе связанных между собой форм можно смело приступать к построению многооконного приложения. Для вызова из одной формы другой можно воспользоваться методом Show(), который загрузит указанную форму в оперативную память компьютера и покажет ее на экране. Метод Hide() скрывает форму от взора пользователя, без выгрузки ее из оперативной памяти. Например, строка программного кода, написанная в подходящей процедуре прерывания первой или второй формы, покажет на экране третью форму: Form3->Show(); //показать третью форму Убрать эту форму с экрана без выгрузки из оперативной памяти можно с помощью инструкции: Form3->Hide(); //скрыть третью форму Полностью закрыть форму можно с помощью инструкции: Form3->Close(); //выгрузить третью форму Построим многооконное приложение, состоящее из двух довольно самостоятельных частей. Первая часть будет информировать пользователя о текущих времени и дате, а также будет содержать календарь. Вторая часть предоставит в руки пользователя виртуальный генератор звуковых волн. Такой генератор будет интересен и полезен тем, кто увлекается физикой. Создайте приложение на базе трех форм и свяжите их между собой. Общие размеры всех форм уменьшите примерно в два раза и расположите их пока произвольно в разных частях экрана. Измените заголовки каждой формы приложения. Пусть окна будут называться: "Главное меню", "Электронные часы. Календарь" и "Виртуальный генератор звуковых волн". Снабдите первую и вторую форму подходящими фоновыми рисунками с помощью знакомого уже вам компонента Image. На первой форме установите две электронные кнопки. ............ |