Создайте приложение с двумя формами и установите вторую форму как стартовую
Чтобы изучить то, как C++Builder использует модули, создайте приложение с несколькими формами. Это будет простая программа, отображающая вторую форму при нажатии на кнопку.
1. Создайте новый проект, выбрав в главном меню пункт File / New Application.
2. Измените значение свойства Name на MainForm, а свойства Caption— на Multiple Forms Test Program.
3. Сохраните проект. Дайте модулю имя Main, а проекту — имя Multiple.
4. Теперь поместите в форму кнопку (Button). Присвойте свойству Name значение ShowForm2, а свойству Caption — значение Show Form 2.
5. Выберите в главном меню пункт File / New Form (или щелкните на кнопке New Form панели инструментов), чтобы создать новую форму. После создания новая форма будет иметь имя Form1 и разместится точно поверх главной формы. Надо, чтобы новая форма имела меньший размер и была более-менее отцентрирована относительно главной формы.
6. Измените размер и положение новой формы так, чтобы она была примерно в два раза меньше главной формы и располагалась в ее центре. Для перемещения формы используйте строку заголовка. Размер можно изменить перетаскиванием нижнего правого угла.
7. Измените значение свойства Name новой формы на SecondForm, а свойства Caption — на A Second Form.
8. Выберите в главном меню пункт File / Save (или щелкните на кнопке Save File панели инструментов) и сохраните файл под именем Second.
Рис. 3.1 Вид формы к этому моменту
10. Щелкните на главной форме. Обратите внимание, что вторая форма теперь закрыта главной формой. Дважды щелкните на кнопке Show Form 2. На экране появится окно редактора кода и курсор будет размещен как раз там, где вам нужно начинать ввод текста.
11. Введите текст, приведенный ниже (вам нужно набрать только одну строку в скобках):
12. Запустите программу
Вы видите, что сюда включен заголовочный файл Main.h, но нет файла Second.h, потому что мы не давали указания C++Builderвключить этот файл. Давайте сделаем это сейчас.
1. Выберите в главном меню пункт File / Include Unit Hdr. На экране появится диалоговое окно Include Unit, показанное на рис. 3.2.
Рис.3.2 Диалоговое окно Include Unit
2. Перед вами находится список доступных модулей. В данном случае единственным модулем в списке является Second. Щелкните на имени Second, а затем на кнопке ОК, чтобы закрыть диалоговое окно.
Диалоговое окно Include Unit отображает только те модули проекта, которые еще не включены в данный модуль. Включенные модули не содержатся в списке.
Теперь в модуль Main включено объявление класса из модуля Second. Щелкните на кнопке Run, чтобы запустить программу. На этот раз компиляция пройдет без задержек и программа заработает. Когда вы щелкнете на кнопке Show Form 2, на экране появится вторая форма.
Как видите, C++Builder помогает вам управлять модулями. Вы должны использовать опцию Include Unit Hdr, чтобы обеспечить модулям доступ к объявлениям классов, использующихся в других модулях.
Самостоятельная работа № V
Расчёт по формуле.
Статьи к прочтению:
Похожие статьи:
Делаю игру, нужно авторизация а я уже сделал первую форму, теперь нужно сделать чтоб вторая запускалась первой
Формы не запускаются, а показываются. В исходнике проекта первой создается та форма, которая создается первой. А вообще, лучше сделать Application.ShowMainForm := False
А потом в неглавной форме показывать главную форму
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
Чет я наверное недопонял но Форма.Show еще не отменили.
Или автору нужно создать форму по ходу?
Тогда вопрос: в каких условиях, потому как по разному можно форму создавать.
uses
Forms,
Unit1 in 'Unit1.pas' ,
Unit2 in 'Unit2.pas' ;
В исходнике проекта первой создается та форма, которая создается первой. |
Чет я наверное недопонял но Форма.Show еще не отменили. |
Глупо! Потому что В исходнике проекта главной считается та форма, которая создается первой.
И если закроешь её, то закроется вся программа!
Поэтому надо просто убрать вторую форму из автосоздавания! И прописать всё самому! До создания первой формы!
А зачем так орать ? Зачем столько восклицательных знаков ?
У вас с психикой проблемы ?
А какая форма должна быть главной - вы у ТС уточнили по ЛС ?
Если хочешь, что бы первой запускалась другая форма заходишь Project - Options - Forms. И в списке Main Form выбираешь нужную тебе.
Это типа ввел данные затем появилось др окно и первое закрылось?
да, именно так.
Если закрыть form2(не главную но первую) то пусть прога закрывается
Аеесли закрыть form1 тоже самое
А как можно форму не закрывать а просто спрятать visible false вроде не работает
Последний раз редактировалось gufon; 16.03.2011 в 19:06 .
в создании первои делаете скрытие первоо и появление второи, а после ввода пароля, наоборот
Разработать демонстрационное приложение, осуществляющее вызов из главной формы второстепенной формы по схеме, изображенной на рис. 1. Приложение реализует взаимодействие между различными формами, которыми могут быть диалоговые окна любой сложности.
В главной форме Form1 разместить:
- элемент управления типа Label для вывода результата возврата из второстепенной формы;
- элемент управления типа Button для вызова второстепенной формы.
Во второстепенной форме Form2 разместить:
- элемент управления типа Label для вывода заголовка формы;
- два элемента управления типа Button для обеспечения подтверждения или неподтверждения выбора (действия) во второстепенной форме.
Рис. 1. Схема взаимодействия между формами
⇑
Выполнение
1. Создать приложение типа Windows Forms Application
Запустить Microsoft Visual Studio 2010 . Пример создания нового приложения типа Windows Forms Application подробно описывается здесь.
Сохранить проект в произвольной папке.
Рис. 2. Главная форма приложения Form1
⇑
2. Разработка главной формы приложения
Из палитры элементов управления Toolbox выносим на форму:
- элемент управления типа Button ;
- элемент управления типа Label .
Рис. 3. Главная форма приложения после внесенных изменений
⇑
3. Создание второстепенной формы
Способ 1.
Для добавления формы №2 в проект этим способом нужно вызвать команду (рис. 4)
Рис. 5. Окно добавления новой формы к проекту
Способ 2.
Также новую форму можно добавить к проекту с помощью соответствующей команды из контекстного меню (рис. 7).
Последовательность действий следующая:
Рис. 7. Добавление новой формы из Solution Explorer
В результате откроется точно такое же окно как на рисунке 5.
⇑
4. Разработка второстепенной формы
Следующим шагом есть разработка второстепенной формы. Используя средства панели инструментов Toolbox создаем второстепенную форму Form2 как показано на рисунке 8. Такое построение формы соответствует условию задачи. Таким же образом, на Form2 имеем элементы управления label1 , butto1 , button2 .
Рис. 8. Второстепенная форма Form2
⇑
5. Программирование событий клика на кнопках OK и Cancel формы Form2
Программируем событие клика на кнопке OK . Подробный пример программирования события клика на кнопке OK описывается здесь.
⇑
6. Вызов формы Form2 из главной формы приложения
Программный код обработчика события будет иметь следующий вид:
В листинге, приведенном выше, сначала создается экземпляр класса типа Form2 . В операторе условного перехода if осуществляется вызов диалогового окна формы Form2 с помощью строки
Листинг всего программного кода формы Form1 следующий
⇑
7. Выполнение приложения
После выполненных действий можно выполнять приложение и исследовать его работу.
Добавьте формы в свой проект с помощью Visual Studio. Если в приложении несколько форм, вы сможете выбрать начальную форму для приложения или одновременно отобразить несколько форм.
Добавление новой формы
Добавьте новую форму в Visual Studio.
В Visual Studio найдите панель Обозреватель проектов. Щелкните проект правой кнопкой мыши и выберите Добавить > Форма (Windows Forms) .
В поле Имя введите имя формы, например MyNewForm. Visual Studio сформирует имя по умолчанию, которое является уникальным. Можно использовать это имя.
После добавления формы Visual Studio откроет конструктор форм для этой формы.
Добавление ссылки на проект в форму
Если у вас есть исходные файлы для формы, можно добавить форму в проект, скопировав файлы в папку проекта. Ссылки на все файлы кода в папке проекта и в дочерних папках проекта будут автоматически добавлены в проект.
Форма включает два файла с одинаковыми именами и разными расширениями: form2.cs (form2 — пример имени файла) и form2.Designer.cs. Иногда присутствует файл ресурсов с тем же именем — form2.resx. В предыдущем примере form2 представляет собой базовое имя файла. Необходимо скопировать все связанные файлы в папку проекта.
Кроме того, можно использовать Visual Studio для импорта файла в проект. При добавлении существующего файла в проект файл копируется в папку проекта.
В Visual Studio найдите панель Обозреватель проектов. Щелкните проект правой кнопкой мыши и выберите Добавить > Существующий элемент.
Читайте также: