Форум: "Основная";
Текущий архив: 2004.01.26;
Скачать: [xml.tar.bz2];
ВнизЗакрытие формы из OnShow Найти похожие ветки
← →
Goida (2004-01-15 13:24) [0]Как закрыть форму Аккуратно, когда в процессе обработки события OnShow возникает ситуация, при которой окно не должно открываться.
← →
Anatoly Podgoretsky (2004-01-15 13:25) [1]Не делать OnShow раз показывать не нужно.
← →
Романов Р.В. (2004-01-15 13:26) [2]PostMessage(Form1.Handle, WM_Close, 0, 0);
← →
Goida (2004-01-15 13:29) [3]
> Романов Р.В.
> PostMessage(Form1.Handle, WM_Close, 0, 0);
А чтобы не видно было маргания формы? Такого нельзя добиться при моих условиях?
← →
Sandman25 (2004-01-15 13:32) [4][3]
См. [1]
← →
Юрий Зотов (2004-01-15 13:37) [5]> Goida © (15.01.04 13:29) [3]
> А чтобы не видно было маргания формы? Такого нельзя добиться
> при моих условиях?
Конкретные Ваши условия пока что все-таки неизвестны. А вообще так.
1. Если форма не главная, то просто не выполнять Show.
2. А если главная, то ДО (строго ДО) вызова Application.Run надо выполнить Aplication.ShowMainForm := False. Например, это можно сделать в ее обработчике OnCreate. Но не в OnShow - это будет уже поздно и форма моргнет (что у Вас и происходит).
← →
Тимохов (2004-01-15 13:40) [6]А можно исключение в OnCreate сгенерить, только придется перекрывать DoCreate()
PROCEDURE TForm_MDIChild.DoCreate();
BEGIN
// Разница с предком состоит в том, что мы не обрабатываем исключения
if Assigned(OnCreate) then OnCreate(Self);
if fsVisible in FormState then Visible := True;
END;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.01.26;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.004 c