С Новым годом! Форум программистов, компьютерный форум, киберфорум
Delphi
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/21: Рейтинг темы: голосов - 21, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 09.04.2009
Сообщений: 24

Form1 := TForm1.Create(..); Form1.Show;

28.05.2010, 11:31. Показов 4476. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброе время суток.

Хочу написать приложение с интерфейсом MDI. Естественно, для главной формы проекта я указал свойство FormStyle := fsMDIForm. Если я хоть что-то понимаю, то остальные формы пректа должны иметь свойство FormStyle := fsMDIСhild. И дочерние формы прекрасно создаются в том-же проекте. Но я хочу архитектурно разбить проект на модули, каждый модуль поместить в dll. В dll, естественно будет форма. У Dll одна экспортируемая функция Run. Эта функция создает экземпляр формы, находящейся в dll, и показывает его на экране.
Delphi
1
2
Form1 := TForm1.Create(..);
Form1.Show;
Из главной MDI-формы я загружаю dll, запускаю функцию Run... Но у меня ни как не получается сделать так, чтобы эта форма появилась как MDIChild-форма приложения. Если задать свойство этой формы fsMDIСhild, то вылеза.т эксепшены. Если сделать обычной формой, то форма не только не становится дочерней, но и вообще даже имеет иконку в виде обычной формы, а не такую, как у главной формы приложения.

Подскажите, если кто знает, в чем дело?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.05.2010, 11:31
Ответы с готовыми решениями:

как сделать ЕСЛИ тру, ТО form1.hide AND form2.show ELSE showmessage
Сделал так if (edit1.Text=a) and (edit2.Text=s) then form1.hide and form2.show else label3.show

Form1 and Form2
В Form1 есть процедура в которой изменяются свойства формы можли ли сделать так чтоб при обращение к этой процедуре из...

Значёк на form1.caption
К примеру откройте блокнот. Сверху будет надпись- блокнот, а слева значёк блокнота. Как в своей программе поставить туда выбранную...

4
3 / 3 / 0
Регистрация: 16.01.2008
Сообщений: 359
31.05.2010, 05:34
Ну ты даешь !
Как же дочерняя форма будет находиться в другой библиотеке ?(читай в другом адресном пространстве, не зависимом от главной?!!)

По-моему это не свосем возможно....):
0
0 / 0 / 0
Регистрация: 09.04.2009
Сообщений: 24
31.05.2010, 10:56  [ТС]
На самом деле это вполне возможно. И ответ на этот вопрос я нашел на сайте 'Королевство Дельфи'. Кому интересно - пишите на kostushock@mail.ru - объясню как сделать. И очень хорошая архитектура приложения получается. Основная MDI-форма вызывает все остальные модули, которые подгружаются из DLL-библиотек.

PS: anjey, ты не прав))

А вопрос у меня этот возник потому, что в C++ Builder я это делаю постоянно. А тут возник вопрос написать приложение на Delphi. А в нем всё по-другому, вот и возник маленький ступор.
0
3 / 3 / 0
Регистрация: 16.01.2008
Сообщений: 359
02.06.2010, 11:32
зачем объяснять, оставь ссылочку...
0
0 / 0 / 0
Регистрация: 09.04.2009
Сообщений: 24
03.06.2010, 00:50  [ТС]
Все ответы здесь

http://www.delphikingdom.com/asp/viewitem.asp?UrlItem=/helloworld/md_dll.htm
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.06.2010, 00:50
Помогаю со студенческими работами здесь

Form1.WindowState := wsMaximized
Подскажите как сделать - что бы форма при запуске раскрывалась во весь экран? (я еще только учусь)

как открыть form2 сразу после открытия form1?
программа после старта открывает сразу form1. как мне сделать что бы открывалась сразу и form2 в которой сразу бы начинал сравниватся хэш...

Помещение в DLL - form1.Memo1.Lines.LoadFromFile('file.txt'); и ему подобного.
Доброго времени суток, помогите пожалуйста решить одну проблему мне нужно запхать в DLL библиотеку процедуру...

Не добавляет из Form3 в Form1
Решил сделать программу. В программе 3 формы и меню. Form1 - главная форма Form2 - не нужна в принципе. Form3 - форма добавления...

Как внести данные из edit1.text из Form2, в DBGrid на Form1?
как внести данные из edit1.text из Form2, в DBGrid на Form 1


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru