![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
MessageDlg [D7, WinXP]
john_mag © (2005-12-07 12:07:00)Доброго времени суток! Не могу понять в чём дело: код следующий...
//Выход из программы
procedure TForm1.BitBtn4Click(Sender: TObject);
var m : integer;
begin
m:= 1;
if MessageDlg('Вы действительно хотите выйти из программы?',
mtConfirmation, [mbYes, mbNo], 0, mbYes) = mrNo then m:= 0;
if m = 1 then Application.Terminate;
end;
...но выход из программы происходит даже если нажимаю No! Подскажите, что у меня не так!
Leonid Troyanovsky (2005-12-07 14:06:00) [1]
> Rem © (07.12.05 13:19) [7]
> И то верно - на каждое нажатие кнопки пользователем - переспрашивать:
> "Вы уверены?"...
Особенно приятны подобные диалоги при завершении сессии.
--
Regards, LVT.
Rem (2005-12-07 13:19:00) [2]И то верно - на каждое нажатие кнопки пользователем - переспрашивать: "Вы уверены?"...
procedure TForm1.Button1Click(Sender: TObject);
begin
Close;
end;
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
CanClose := (MessageDlg('Вы действительно хотите выйти из программы?', mtConfirmation, [mbYes, mbNo], 0) = mrYes) and
(MessageDlg('Вы уверены?', mtConfirmation, [mbNo], 0) = mrYes);
end;
:-)
john_mag (2005-12-07 12:42:00) [3]спасибо >Kolan © (07.12.05 12:34) [5]
надо было убрать QDialogs!
Kolan (2005-12-07 12:34:00) [4]Незнаю у меня все работает... Вот весь текст проекта...
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons;
type
TForm1 = class(TForm)
BitBtn1: TBitBtn;
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
if MessageDlg('Вы действительно хотите выйти из программы?',
mtConfirmation, [mbYes, mbNo], 0) = mrYes
then
Application.Terminate;
end;
end.
Хинт (2005-12-07 12:24:00) [5]if Messagebox('','',MB_OKCANSEL)=ID_OK then ...
john_mag (2005-12-07 12:22:00) [6]ИМХО! теперь у меня невозможно из проги выйти даже при нажатии Yes! )
Kolan (2005-12-07 12:15:00) [7]Так не проше?
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
if MessageDlg('Вы действительно хотите выйти из программы?',
mtConfirmation, [mbYes, mbNo], 0) = mrYes
then
Application.Terminate;
end;
Kolan (2005-12-07 12:13:00) [8]
procedure TForm1.BitBtn1Click(Sender: TObject);
var m : integer;
begin
m:= 1;
if MessageDlg('Вы действительно хотите выйти из программы?',
mtConfirmation, [mbYes, mbNo], 0 {Тут нет mbYes}) = mrNo then m:= 0;
if m = 1 then Application.Terminate;
end;
PS Кстати у меня компилятор на твой код ругнулся сказав что слишком много параметров...