Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.09.16;
Скачать: CL | DM;

Вниз

проблема в компоненте TOpenDialog   Найти похожие ветки 

 
foreverDelphi ©   (2007-08-22 01:41) [0]

может я ошибаюсь, но окно компонента модальное и насколько я понимаю когда оно откроется в главном потоке приложения обработка команд остановится и будет ждать его закрытия. Что-то наподобие MessageDlg, а мне нужно чтобы окно диалога открывалось наподобие вызова процедуры Show


 
Юрий Зотов ©   (2007-08-22 03:21) [1]

> foreverDelphi ©   (22.08.07 01:41)

> может я ошибаюсь, но окно компонента модальное

Не ошибаетесь, оно модальное.

> и насколько я понимаю когда оно откроется в главном потоке приложения
> обработка команд остановится и будет ждать его закрытия.

Снова не ошибаетесь, так и будет.

> а мне нужно чтобы окно диалога открывалось наподобие вызова
> процедуры Show

Для этого диалог нужно открывать в отдельном потоке, но визуальная часть VCL однопоточная, поэтому вряд ли так получится (хотя можно попробовать, потому что TOpenDialog - компонент невизуальный). Еще можно для показа диалога использовать не компонент VCL, а WinAPI (тогда второй поток прокатит точно), но это сложнее.

Обычно поступают наоборот - в отдельный поток выносят невидимую долгоиграющую операцию, а визуальную часть оставляют в главном потоке.

Подойдет Вам такая схема? Обрисуйте задачу подробнее.


 
foreverDelphi ©   (2007-08-22 03:27) [2]


> Обычно поступают наоборот - в отдельный поток выносят невидимую
> долгоиграющую операцию, а визуальную часть оставляют в главном
> потоке.


да, спасибо...
p.s. истина в самом простом...



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

Текущий архив: 2007.09.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.029 c
15-1187317251
Идей
2007-08-17 06:20
2007.09.16
Можно ли написать функцию которая бы писала функцию копирования з


15-1187331765
AZIZE
2007-08-17 10:22
2007.09.16
Вопрос на засыпку


3-1179317658
Цукор5
2007-05-16 16:14
2007.09.16
insert поля BCD


2-1187607368
лесник
2007-08-20 14:56
2007.09.16
Отмена начатой печати(страницы)


2-1187687367
Quart
2007-08-21 13:09
2007.09.16
Query1.SQL.Assign(Edit1)