Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.05.07;
Скачать: CL | DM;

Вниз

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

 
koleg   (2006-04-19 13:19) [0]

Уважаемые, подскажите пож-ста, чтоб при нажатии по кнопке Выход, появлялось диалоговое окно "Вы уверены" с кнопками (Да Нет). Где-то читал про это, но не могу найти.


 
Ega23 ©   (2006-04-19 13:26) [1]

Главная ворма, событие OnCloseQuery

procedure TFClassConfig.FormCloseQuery(Sender: TObject;
 var CanClose: Boolean);
begin
 CanClose:=(MessageBox(Handle, PChar("Çàêîí÷èòü ðàáîòó?"), PChar("Âíèìàíèå!"),
                       MB_OKCANCEL or MB_ICONINFORMATION)=IDOK);
end;


 
koleg   (2006-04-19 14:25) [2]

Handle, PChar-что это? дайте пож-ста линк где можно почитать об этом. Или в книжный магазин придется шагать?


 
Ega23 ©   (2006-04-19 14:28) [3]

Handle - это идентификатор окна в системе, в рамках которого будет показан MessageBox.
PChar - это такой тип данных.
Подробно об этом можно почитать в хелпе.


 
Джо ©   (2006-04-19 14:29) [4]


> [2] koleg   (19.04.06 14:25)

Можно и проще
CanClose := MessageDlg ("Вы уверены, что хотите выйти?",mtWarning,[mbYes,mbNo],-1) = mrYes;


> Или в книжный магазин придется шагать?

Это обязательно :)


 
GrayFace ©   (2006-04-19 15:31) [5]

> CanClose := MessageDlg ("Вы уверены, что хотите выйти?", mtWarning,[mbYes,mbNo],-1) = mrYes;

MessageBox лучше. "Пибикает" и кода лишнего нету. :)

По Handle: Help -> Windows SDK -> Указатель: "EnumWindows" -> кнопка "Group".


 
koleg   (2006-04-19 15:42) [6]


> Подробно об этом можно почитать в хелпе.

На анлицком???? Ужассс!!!


 
koleg   (2006-04-19 15:45) [7]

В любом случае спасибо всем кто откликнулся. Чувствую, что придется еще не раз обратиться за помощью.


 
Джо ©   (2006-04-19 17:11) [8]

>
> [6] koleg   (19.04.06 15:42)
> На анлицком???? Ужассс!!!

Надо, Федя, надо! (c)
;)


 
Anatoly Podgoretsky ©   (2006-04-19 18:45) [9]

koleg   (19.04.06 15:42) [6]
Ничего страшного, и более того обязательно.


 
koleg   (2006-04-20 00:01) [10]

Ребят, ну а дальше то? Диалоговое окно получил, а как дописать код, чтоб по кнопке Yes приложение закрылось?
procedure TForm1.Button3Click(Sender: TObject);
 var CanClose: Boolean;
begin
  CanClose := MessageDlg ("Âû óâåðåíû, ÷òî õîòèòå âûéòè?",mtWarning,
  [mbYes,mbNo],-1) = mrYes;

end;


 
Джо ©   (2006-04-20 01:03) [11]

> [10] koleg   (20.04.06 00:01)

Этот код, как и указывал [3] Ega23, нужно написать в обработчике события OnCloseQuery главной формы приложения.


 
Германн ©   (2006-04-20 03:03) [12]

А на  TForm1.Button3Click нужно писать Application.MainForm.Close.
Это в дополнение к Джо ©   (20.04.06 01:03) [11]


 
Loginov Dmitry ©   (2006-04-20 09:00) [13]


> Уважаемые, подскажите пож-ста, чтоб при нажатии по кнопке
> Выход, появлялось диалоговое окно "Вы уверены" с кнопками
> (Да Нет). Где-то читал про это, но не могу найти.


Имхо, сообщение лучше оформлять примерно так:
"Обнаружены несохраненные данные. Хотите ли вы их сохранить?"
[Да, Нет, Отмена]

В противном случае окно подтверждения выхода, имхо, бесполезно, и будет только раздражать ваших будущих пользователей.



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

Текущий архив: 2006.05.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.01 c
2-1145605287
adim
2006-04-21 11:41
2006.05.07
SQL


2-1145510767
lionmen
2006-04-20 09:26
2006.05.07
Рамка в WORDe


10-1118573883
SerJ23
2005-06-12 14:58
2006.05.07
определение номера абзаца


2-1145034615
Express
2006-04-14 21:10
2006.05.07
Сортировка


2-1145547338
el-magnifico
2006-04-20 19:35
2006.05.07
Excel FREE





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский