Вниз
Скачать: CL | DM;

Модальный диалог.   Найти похожие ветки 

← →
_zerg   (2003-06-11 12:27) [0]

Здравствуйте!

Никак не могу понять, при нажатии на кнопку создаю форму, делаю ShowModal, всё гуд, но затем в этой модальной форме выполняется длительная операция и система (XP) без проблем переключается на основную форму, хотя не должна.
Подскажите в чём проблема.

Спасибо!


← →
Spawn ©   (2003-06-11 12:32) [1]

Покажи код :)


← →
KSergey ©   (2003-06-11 12:37) [2]

А внутри этой длительной операции Application.ProcessMessages стоит? Может в нем дело?


← →
Valet   (2003-06-11 12:38) [3]

Где то в этой процедуре ты разблокируешь основную форму (делаешь EnableWindow(mainform.handle, true) для основной формы.
Это только предположение, но проблема именно в твоей операции.


← →
_zerg   (2003-06-16 10:21) [4]


Form1 = new TForm1(NULL);
Form1->ShowModal();
delete Form1;

Далее в Form1 делается перенос данных из одной базы в другую.
Application->ProcessMessages() нет.


← →
Pat ©   (2003-06-16 12:46) [5]

Бывает такой глюк у ShowModal...к сожалению...Сам иногда натыкался, причем на Win98.
Попробуй сделать Form1.FormStyle=fsStayOnTop; Form1.Show; MainForm.Enabled:=false;тра-ля-ля;Form1.free; MainForm.Enabled:=true
Это примерная схема...Естественно, надо все в try..finally упаковать


← →
Юрий Федоров ©   (2003-06-16 12:51) [6]

А может, нужно не NULL передавать в конструктор, а реального владельца ?


← →
Skier ©   (2003-06-16 12:56) [7]

>_zerg (16.06.03 10:21)
-владелец Application
-BorderStyle := bsNone
-Хорошо бы украсить TBevel-ом и TProgressBar-ом
с использованием ProcessMessages


← →
_zerg   (2003-06-18 11:10) [8]

ProcessMessages не поставишь, т.к. основное время занимает выборка из бд!


← →
stone ©   (2003-06-18 12:04) [9]

А почму бы не выполнять выборку в отдельном потоке. На этом сайте даже видел статью с примером.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.01 c
3-97541
Юля П.
2003-06-06 14:47
2003.06.30
Многопользовательская работа с BDE


3-97502
Akademik
2003-06-05 12:51
2003.06.30
Нет каскадного удаления в таблицах Paradox


14-97866
HolyGlory
2003-06-12 14:08
2003.06.30
По VC++


14-97833
DDDD
2003-06-12 09:34
2003.06.30
Microsoft DDK


7-97913
BaRToV
2003-04-13 13:13
2003.06.30
CD-Rom и все что с ним связано...




   Наверх