![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ShowModal уже открытое окно [D7, WinXP]
heady © (2005-07-02 22:24:00)Hi, All! Есть PopupMenu, по клику по одному из пунктов которого происходит Form3.ShowModal; но если попытаться вторично вызвать уже открытое окно, то вылезает ошибка: "Cannot make a visible window modal". Не подскажите, как сделать чтобы если окно уже открыто, то ему просто передавался фокус, а не вылетала ошибка? или может оно просто закрывалось и открывалось вновь... Зарание благодарен.
isasa (2005-07-02 23:24:00) [1]Логичнее
beginчто-бы не поймать
Form3.Visible:=true;
Form3.SetFocus;
end;
Can not focus in non visible component
heady (2005-07-02 22:39:00) [2]сосбо корректно получилось:
if not Form3.Visible then Form3.ShowModal else
begin
Form3.SetFocus;
Form3.Visible:=true;
end;
lookin (2005-07-02 22:38:00) [3][7] Eraser © (02.07.05 22:36)
Пусть так...
Eraser (2005-07-02 22:36:00) [4]lookin © (02.07.05 22:31) [4]
if not Form3.Visible then Form3.Visible:=true;
А где Modal?
if not Form3.Visible then
Form3.ShowModal;
lookin (2005-07-02 22:35:00) [5][5] heady (02.07.05 22:34)
Это ирония?
heady (2005-07-02 22:34:00) [6]lookin ОНО! THX!
heady (2005-07-02 22:31:00) [7]Спасибо!
lookin (2005-07-02 22:31:00) [8]if not Form3.Visible then Form3.Visible:=true;
Eraser (2005-07-02 22:26:00) [9]heady (02.07.05 22:24)
окно уже открыто, то ему просто передавался фокус
Фокус итак всегда у модального окна.
Eraser (2005-07-02 22:25:00) [10]heady (02.07.05 22:24)
Проверять Form3.Visible перед вызовом Form3.ShowModal.