Как зделать 2-формы в одном модуле?

Vitaly333

Member
Joined
month_10_short 21, 2006
Messages
9
Reaction score
0
Age
40
Location
Россия
Нужно сделать так чтобы в одном Unite(Delphi) можно было работать с двумя и более формами . Что бы можно было кидать компоненты точно так же на 2-ю как и на 1-ую форму.
 

Guard

Premium
Joined
month_3_short 5, 2004
Messages
58
Reaction score
2
Age
52
Location
Тула
Извини за не скромный вопрос, а нафига ? Опиши пожалуйста проблему, может ее можно решить другим способом.
 

Ognev

ex-Team DUMPz
Joined
month_8_short 20, 2018
Messages
2,108
Reaction score
902
Age
27
Возможно, горю помогут фреймы ...
 

1337mod

Premium Member
Joined
month_11_short 12, 2018
Messages
370
Reaction score
262
Есть такой компонент

Компонент TSpeedForm для Delphi. В больших проектах у меня каждый раз получается следующее: есть 10-30 основнх форм и для каждой из них 2-5 диалоговых окон. Итого около 100 форм. Для каждой формы свой .pas и .dfm файл. Это не хорошо. Компонент TSpeedForm реализует встроенную форму - т.е. форму, для которой не нужен отдельный модуль.

Сам не пробовал;)

_http://rapidshare.com/files/636644/TSpeedForm.rar.html

Pass : http://dumpz.ru

Во-первых файл пакета Делфи dpk не нужен, для установки компонента:
Выберите пункт меню Tools -> Environtment Options. В появившемся окне выберите закладку Library и добавить путь $(DELPHI)\Source\Toolsapi\.
Идем в меню Components -> Install component и выбираем speedform.pas,жмем Install.
А во-вторых ты спросил как я тебе и подсказал,а если самому,то какие могут быть вопросы?? пиши пожалуйста,я думаю никто против не будет;))
 
Last edited by a moderator:

Vitaly333

Member
Joined
month_10_short 21, 2006
Messages
9
Reaction score
0
Age
40
Location
Россия
У меня в проекте где должно быть только 2 -модуля , как бы вам сказать два движка(конечно это сильно сказано) - один модуль это графичексий движок-
в нем содержиться работа со всей графикой + работа с интерфейсом(поэтому все фомы должны быть в одном Unite) И 2-ой модуль - математическое ядро - различные математичекие методы, вызываемые от сюда в 1-ый Unit, т.е вызываемые интерфейсом.
van4ello - идея c TSpeed хорошая , но во 1-ых хотелось бы самому написать а во вторых для того что бы установить этот компонент нужен файл пакета *dpk , которого нету в архивчике , ссылку на который ты дал.
 

Ognev

ex-Team DUMPz
Joined
month_8_short 20, 2018
Messages
2,108
Reaction score
902
Age
27
Если dll-ку можно назвать "модулем", то часть добра можно слить туда ...
 

Guard

Premium
Joined
month_3_short 5, 2004
Messages
58
Reaction score
2
Age
52
Location
Тула
Можно попробовать динамическое создание форм непосредственно из модуля. Дело геморойное, но в принципе работает :)
 

ploki

Member
Joined
month_5_short 16, 2005
Messages
237
Reaction score
180
Location
Москва
TSpeedForm проблему решает, хотя и не на 100%.
Пробовал пользоваться, хотя и не с целью избавиться от pas и dfm. Идеологически и с точки зрения проектирования это неправильно (особенно общий dfm). Но если надо, то пожалуйста.
С точки зрения "написать самому" - ничего сложного нет, все идеи очевидны. Смотришь TSpeedForm.pas и реализуешь по-своему. Динамическое создание/удаление формы тривиально.

Но мне кажется, что лучше использовать что-то типа ToolBar2000 c SpTBXLib (http://club.telepolis.com/silverpointdev/). Намного больше интерфейсных возможностей, а твою проблему решает на 5 с плюсом. Можно и другие компоненты для "доканья".
 

Guard

Premium
Joined
month_3_short 5, 2004
Messages
58
Reaction score
2
Age
52
Location
Тула
Если ты делаешь серьезный проект, то моё мнение надо все писать самому, что бы потом не получить кучу гемора с поддержкой.
 

ploki

Member
Joined
month_5_short 16, 2005
Messages
237
Reaction score
180
Location
Москва
Серьёзный проект невозможно написать целиком в одиночку.

К тому же операционную систему тоже придётся написать самому, а то в MSDN неточности встречаются, да и с поддержкой Borland лучше не заморачиваться - собственная версия Delphi будет намного круче :).

Никто не будет ждать несколько месяцев/лет и платить десятки тысяч денег новому разработчику, если это можно получить сейчас за сто денег, а то и бесплатно с гарантированным результатом.
Единственное - надо по возможности использовать компоненты с исходным кодом. Тогда куча гемора резко уменьшается.
 

Zevs

Member
Joined
month_10_short 2, 2005
Messages
220
Reaction score
77
Age
22
Можно попробовать динамическое создание форм непосредственно из модуля. Дело геморойное, но в принципе работает :)

Дело.

Чтобы трохи облегчить жизнь, можно сначала наваять все и отладить традиционным способом, а потом слить все в один модуль. При этом, используя просмотр исходных форм в виде текста можно перенести в конструкторы форм в новом модуле (подправив) инициализацию свойств элементов управления.
 

Bodom

Member
Joined
month_4_short 17, 2004
Messages
276
Reaction score
84
Age
55
Location
Харьков Украина
Возможно только написав формы на чистом WinApi, тогда можешь в один модуль насовать сколько угодно.
В противном случае формы не будут поддерживаться средой Делфи в частности свойства и методы в инспекторе объектов.
Ps а пробелма надумана, надо разместить все в 2 файлах используй DLL.
 

Guard

Premium
Joined
month_3_short 5, 2004
Messages
58
Reaction score
2
Age
52
Location
Тула
Возможно только написав формы на чистом WinApi, тогда можешь в один модуль насовать сколько угодно.
В противном случае формы не будут поддерживаться средой Делфи в частности свойства и методы в инспекторе объектов.
Ps а пробелма надумана, надо разместить все в 2 файлах используй DLL.

Если динамически создавать форму + компоненты на ней, то нет никаких проблем так же подключиться к событиям :) и соответственно использовать свойства и методы. Я так подозреваю ты этого никогда не пробовал делать самостоятельно и уже вводишь людей в заблуждение ;)
С другой стороны реализовать формы на чистом WinAPI или зачем то прикручивать DLL это такой гемор, что действительно подумаешь - "а нафига мне все это ?".
 

Bodom

Member
Joined
month_4_short 17, 2004
Messages
276
Reaction score
84
Age
55
Location
Харьков Украина
Если динамически создавать форму + компоненты на ней, то нет никаких проблем так же подключиться к событиям :) и соответственно использовать свойства и методы. Я так подозреваю ты этого никогда не пробовал делать самостоятельно и уже вводишь людей в заблуждение ;)
С другой стороны реализовать формы на чистом WinAPI или зачем то прикручивать DLL это такой гемор, что действительно подумаешь - "а нафига мне все это ?".

Вы немного не поняли. Задача стояла кидать компоненты на 1 и на вторую формы. Это можно делать только в режиме Designera. Речь не идет о работе типа
frm = TForm.Create () и т.д. и далее формирование компонет на форме. Это динамическое создание. Так можно делать. А вот кидать на них компоненты не получится. Так что никого я в заблуждение не ввожу :D
 
Top