Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Вниз

Создать форму в доп. процессе   Найти похожие ветки 

 
stas ©   (2010-05-22 16:29) [0]

У программы есть дополнительный процесс, нужно создать в нем форму и показать ее пользователю, а еще лучше форму создать в основном, по команде из доп. процесса. Подскажите как это правильно сделать?


 
Leonid Troyanovsky ©   (2010-05-22 19:18) [1]


> stas ©   (22.05.10 16:29)  

> У программы есть дополнительный процесс, нужно создать в
> нем форму и показать ее пользователю, а еще лучше форму
> создать в основном

Лучше создать и показать в основном.
TFormX.Create(nil);

--
Regards, LVT.


 
Loginov Dmitry ©   (2010-05-22 21:03) [2]


> Подскажите как это правильно сделать?


Правильно - вызвать с помощью Syncronize функцию из основного потока, и в ней создавать и показывать все что нужно.

Еще один прием:
TThread.Syncronize(nil, Form1.Show); // Покажет заранее созданную форму на экране
TThread.Syncronize(nil, Form1.Close); // Закроет форму

TThread.Syncronize(nil, Form1.Free); // Уничтожит форму


 
DVM ©   (2010-05-24 00:53) [3]

Что такое дополнительный процесс? Речь о потоках или процессах?


 
Германн ©   (2010-05-24 02:34) [4]


> DVM ©   (24.05.10 00:53) [3]

Имхо о потоках. Бо в другом процессе весьма сложно создать форму. А иногда и совсем не возможно.


 
sniknik ©   (2010-05-24 07:58) [5]

> вызвать с помощью Syncronize функцию из основного потока
это будет не команда, это будет "прерывание" т.е. доп. поток "встанет". лучше уж определить свое событие в основном, где форму и создавать, а из потока его просто инициировать (PostMessage). вот это будет команда. и поток может "скомандовав" работать дальше.


 
stas ©   (2010-05-25 17:21) [6]

Сделал через TStringList. В доп.потоке создаю форму записываю ее в stringList, а в основном по таймеру вызываю форму, вычищаю запись и уничтожаю форму.


 
Leonid Troyanovsky ©   (2010-05-25 22:11) [7]


> stas ©   (25.05.10 17:21) [6]

> Сделал через TStringList. В доп.потоке создаю форму

Экстрим, что можно даже понять.

--
Regards, LVT.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.062 c
15-1275036604
12
2010-05-28 12:50
2010.08.27
Идея игрушки: Программируемый мини-футбол.


6-1223579612
Booo))
2008-10-09 23:13
2010.08.27
clientsocket serversocket


2-1274637112
Semen
2010-05-23 21:51
2010.08.27
Вывести сообщение при загрузке Windows


15-1273588423
bss
2010-05-11 18:33
2010.08.27
D2006 - неверная подсказка для классовых методов


6-1219075279
ocean
2008-08-18 20:01
2010.08.27
IdSmtp headers





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский