Главная страница
    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.06 c
2-1273822922
Гном45
2010-05-14 11:42
2010.08.27
Прибавить месяц


4-1236677806
Demo_nik
2009-03-10 12:36
2010.08.27
как перехватить функцию копирования


2-1271231298
Анна
2010-04-14 11:48
2010.08.27
sp_help доступ к данным второго recordset


15-1265614586
Andy BitOff
2010-02-08 10:36
2010.08.27
Крик души в чате.


2-1274505496
_Alis_
2010-05-22 09:18
2010.08.27
несколько GroupBox-ов





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский