![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#21 |
Новичок
Джуниор
Регистрация: 18.01.2008
Сообщений: 1,720
|
![]()
У Вас тема называется "Размножение окон". Где Вы храните всё новые и новые переменные типа TForm2?
А как вы собираетесь организовать параллельную обработку нескольких объектов? Я так понял в этом цель состоит. Интересно просто. |
![]() |
![]() |
![]() |
#22 | ||
Форумчанин
Регистрация: 08.01.2008
Сообщений: 233
|
![]() Цитата:
Цитата:
|
||
![]() |
![]() |
![]() |
#23 |
Новичок
Джуниор
Регистрация: 18.01.2008
Сообщений: 1,720
|
![]()
Ну так Вы их не храните, или они "работают не мешая друг другу"? Как вообще переменные могут работать? Что происходит c членами переменной Form2 после очередного нажатия на кнопку?
|
![]() |
![]() |
![]() |
#24 | ||
Форумчанин
Регистрация: 08.01.2008
Сообщений: 233
|
![]()
Работают не мешая и не храню
![]() Цитата:
Цитата:
![]() ![]() |
||
![]() |
![]() |
![]() |
#25 | |
Новичок
Джуниор
Регистрация: 18.01.2008
Сообщений: 1,720
|
![]() Цитата:
Как и куда может "размножаться" одна единственная переменная Form2? |
|
![]() |
![]() |
![]() |
#26 | |
Форумчанин
Регистрация: 08.01.2008
Сообщений: 233
|
![]()
На практике именно так и есть.
Цитата:
|
|
![]() |
![]() |
![]() |
#27 | |
Новичок
Джуниор
Регистрация: 18.01.2008
Сообщений: 1,720
|
![]()
Ну, Вам виднее. До сего дня, правда, спецификатор private ограничивал доступ к члену класса только для объектов данного класса, ну да ладно.
Цитата:
Код:
|
|
![]() |
![]() |
![]() |
#28 | |
Пользователь
Регистрация: 20.01.2008
Сообщений: 24
|
![]() Цитата:
1. есть некоторая frmMain в модуле MainUnit, которая создается в program Project1 обычным способом Application.CreateForm(TfrmMain, frmMain) 2. на frmMain есть Кнопочка, которая открывает диалоговое окно с предложением выбрать файл 3. есть прописанная в Project1.dpr форма frmFunc из модуля FuncUnit, но не создаваемая, при этом в модуле FuncUnit удалена строка var frmFunc: TfrmFunc, так как она не нужна, зато в классе TfrmFunc в разделе public есть процедура funcProc, принимающая в качестве параметра имя файла и запускающая код обработки файла с отображением нужных окон и в них инфы 4. после выбора файла (п.2) выполняется код создания экземпляра класса TfrmFunc и вызывается открытый метод funcProc(OpenDialog.FileName) Проблема у вас только в том, что пока не выполнится код в funcProc повторно вы кнопочку нажать не сможете, если не напишите Application.ProcessMessages в коде обработки файла в классе TfrmFunc Могу предложить еще другой вариант - использовать нити, то есть код, который Вы пишите в обработчике нажатия Кнопки на frmMain, нужно запихнуть в процедуру, которая выполняется в отдельной нити (thread), а в обработчике нажатия кнопки создавать новый экземпляр потока с запусков в нем этого самого кода. На словах конечно плохо объяснять, но модель архитектуры приложения рисовать сейчас нет времени. Кстати класс этот можно запихнуть прямо в модуль нити (TMyThread) |
|
![]() |
![]() |
![]() |
#29 | ||
Форумчанин
Регистрация: 08.01.2008
Сообщений: 233
|
![]() Цитата:
Код:
Цитата:
Проект приложил. |
||
![]() |
![]() |
![]() |
#30 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Ох и демагогия!...
Непонимаю хода мыслей спорящих - на мой взгляд лучшее решение предбявил B_N Он верно сказал что мона сделать одну главную форму,а остальные будут создаваться когда пользователь захочет открыть еще один файл, причем насчет потоков это тоже светлая мыслю, хоть и не обязательная.
I'm learning to live...
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Поверх окон | Лубышев | Помощь студентам | 1 | 29.01.2008 13:43 |
Координаты окон | Лубышев | Общие вопросы Delphi | 6 | 22.01.2008 19:40 |
Размножение червя | ZYRGiX | Безопасность, Шифрование | 6 | 07.09.2007 19:39 |
Пристыковка Окон | OrdJONY | Общие вопросы Delphi | 15 | 19.04.2007 12:47 |