Форум: "Основная";
Текущий архив: 2002.06.13;
Скачать: [xml.tar.bz2];
Вниз
Завершение сеанса Найти похожие ветки
← →
esprit_bel (2002-05-23 05:51) [0]Хочу чтобы моя прога выводила сообщение типа "Бай бай" перед завершением сеанса.
← →
MBo (2002-05-23 06:51) [1]например, так?
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
showmessage("bye");
end;
← →
esprit_bel (2002-05-24 12:17) [2]Нет я хочу чтобы пока на ОК не нажмешь сеанс не глушился.
← →
Lusha (2002-05-24 12:18) [3]>esprit_bel (24.05.02 12:17)
Гы-гы... А так и будет... :))))
← →
Song (2002-05-24 13:14) [4]2Lusha © (24.05.02 12:18)
Смотря какая ОС.
Для гарантирированного эффекта надо отлавливать WM_QUERYENDSESSION
← →
Lusha (2002-05-24 16:20) [5]>Song © (24.05.02 13:14)
Да-а-а? А скажите, уважаемый, в какой операционной системе для предложенного MBo кода клавишу ОК нажимать не придется? :)))
P.S. Вообще то я шутил (там, типа, смайлик нарисован)... А то, что автору наверняка нужен обработчик OnCloseQuery я тоже догадываюсь... Но это так к слову...
← →
Новеньки в Делфи (2002-05-24 17:33) [6]ну например в OnCloseQuery
ShowMessage("bye");
Close;
← →
Song (2002-05-24 18:31) [7]2Lusha © (24.05.02 16:20)
Например в NT. ОС ждёт какого-то времени пока пользователь не нажмёт кнопку т.е. пока процесс explorer.exe не завершится нормально, потом принудительно подавит процесс и выключится.
← →
Song (2002-05-24 18:32) [8]2Новеньки в Делфи (24.05.02 17:33)
В onCloseQuery делать Close нельзя, будет AV
← →
Lusha (2002-05-25 10:25) [9]>Song © (24.05.02 18:31)
Э-э-э, батенька, так не честно... Я имел в виду завершение сессии приложения, а не операционной системы... :)
← →
esprit_bel (2002-05-28 07:41) [10]А где этот самый OnCloseQuery лежит?
← →
jonik pegas (2002-05-28 08:08) [11]В закладке Events Object Inspector-а
← →
mukha (2002-05-28 08:14) [12]OnCloseQuery- это событие для формы. Ищи в инспекторе объектов. Событие OnCloseQuery возникает в ответ на попытку закрыть форму и вызывается всегда независимо от способа закрытия формы. Обработчик события получает логическую переменную - признак canClose. По умолчанию эта переменная имеет значение true и форму можно закрыть. Если установить false, то форма останется открытой, и можно использовать для проверки, подтверждения закрытия окна и т.д.
Например:
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
CanClose:=MessageDlg("esprit_bel! Хотите завершить программу?",mtConfirmation,[mbYes,mbNo],0)=mrYes;
end;
При закрытии формы выдаётся запрос на закрытии формы. Если кликнуть Yes - форма закроется, если No - нет.
← →
esprit_bel (2002-06-01 09:39) [13]Сердечно благодарю?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.06.13;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.006 c