![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Взаимодействие потоков в C# [WinXP]
ilya39 © (2005-09-14 15:45:00)Проблема следующая:
Приложение не имеет главной формы. Метод Application.Run() принимает потомка ApplicationContext (назовем его appctx). В конструкторе appctx создается и запускается дополнительный поток. Мне надо при определенном событии из дополнительного потока отдать команду главному потоку создать форму и показать ее. Как это сделать? Пробовал обявлять делегат и в дополнительном потоке вызывыть метод appctx, создающий форму, через этот делегат (BeginInvoke) - в результате появляется окно не реагирующее ни на какие события. Как же все-таки это сделать?
Где я только уже это не спрашивал... Второй день голову ломаю...
В конце концов создал форму заранее (в конструкторе appctx). И попробовал показывать через метод Control.BeginInvoke (этой формы). Но оказывается сей метод не работает если форму не показать хотябы раз (Show). А мигать формой при запуске мне не улыбается...
ilya39 (2005-09-15 08:57:00) [1]Тренируюсь я... Напоминатель пишу... Иконка в трее... Меню... По выборе пункта меню создаются и отображаются диалоговые окна... Дополнительный поток сканирующий масиив... и т.д. и т.п.
DiamondShark (2005-09-14 18:07:00) [2]С какой целью используется такой чудесатый дизайн?