|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Delphi - Многомодульные программы в Delphi |
|
Delphi - Многомодульные программы в Delphi
|
Старожил Сообщения: 482 |
Профиль | Отправить PM | Цитировать Я только начинаю изучать Delphi. Сначала попробовал создать консольную программу. Тут всё просто, в точности как в знакомом мне Паскале. Сейчас разбираюсь как GUI-программы пишутся. Изучаю по книге В. В. Фаронова "Delphi. Программирование на языке высокого уровня". Насколько я понял, когда я создаю графическую форму, вместе с ней создаётся модуль, без модуля форма работать не может. То есть, GUI-программа по-любому будет многомодульной, минимум два модуля в ней будут: Unit1.pas и основная программа Project1.dpr (чтобы не путаться оставляю имена умолчальными). Что произойдёт после компиляции? Оба модуля, скомпилированных в бинарный код, будут по раздельности упакованы в Project1.exe и при запуске его в памяти будут сразу два процесса или всё же код будет один?
А как передавать значения переменных между модулями? Допустим у меня в основной программе вычисляется 36 в степени 3: А в модуле результат выводится путём присваения Caption метки Label1: Как сделать, чтобы значение переменной result передавалось из основной программы в модуль? Извините, если глупость спрашиваю, я всего лишь новичок. Дайте правильное направление мысли. |
|
Отправлено: 23:30, 09-03-2011 |
Необычный Сообщения: 4463
|
Профиль | Сайт | Отправить PM | Цитировать Цитата RasKolbas:
Для меж.модульного взаимодействия, пропиши название модуля в uses. Вызов, как при работе с объектом Unit1.Form1.Label1.Caption := "test"; к примеру. В основном многомодульные программы появляются в случае многооконных приложений. |
|
------- Отправлено: 23:51, 09-03-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 198
|
Профиль | Отправить PM | Цитировать Касательно передаваемых данных между модулями.
То что объявлено в интерфейсной части модуля (переменные, функции, константы), будет доступно для всех модулей, которые его импортируют. Варианты существуют разные, вот один из способов. Пример. Unit1 ... interface function a():double; // делаем функцию доступной извне ... implementation function a():double; // собственно реализация функции begin result:=Exp(3*Ln(36)); end; ... |
Отправлено: 19:15, 10-03-2011 | #3 |
Старожил Сообщения: 295
|
Профиль | Отправить PM | Цитировать Цитата:
Кстати, ни в коем случае не используйте имя result в качестве имени переменной, ибо это слово зарезервировано и в функциях присваивает значение переменной, которая будет возвращаться в качестве результата работы функции. |
|
Отправлено: 20:03, 10-03-2011 | #4 |
Старожил Сообщения: 482
|
Профиль | Отправить PM | Цитировать Цитата lxa85:
|
||
Отправлено: 20:28, 10-03-2011 | #5 |
Необычный Сообщения: 4463
|
Профиль | Сайт | Отправить PM | Цитировать RasKolbas, ЕМНИП было в Delphi 6. Сейчас развернуть среду программирования пока некуда, как появится возможность, скину пример.
|
Отправлено: 20:47, 10-03-2011 | #6 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Программы Adobe в 2010 будут более уязвимы, чем программы Microsoft | OSZone News | Новости информационных технологий | 0 | 30-12-2009 20:30 | |
Delphi - Delphi | UpperCase на Delphi 7 | Cognolio | Программирование и базы данных | 3 | 26-01-2006 15:42 | |
Delphi - Программы на Delphi 5 и ресурсы User в Win-98 | ShaRP | Программирование и базы данных | 1 | 17-10-2005 10:01 | |
Delphi - Delphi, WinAPI | Корректное завершение программы | fossil | Программирование и базы данных | 6 | 10-08-2005 14:52 | |
Delphi - Delphi. Как кликнуть из программы по ссылке в открытом IE? | IkaMazini | Программирование и базы данных | 2 | 07-10-2004 12:53 |
|