Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.05.07;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.013 c
15-1144748342
AlexF
2006-04-11 13:39
2006.05.07
Работа с dbs файлами


1-1144047438
Mac Raven
2006-04-03 10:57
2006.05.07
не работают формулы SpreedSheetа для OWC


2-1144308636
Sania
2006-04-06 11:30
2006.05.07
Сеть, передача изображения


15-1145249352
DelphiN!
2006-04-17 08:49
2006.05.07
Помогите получить время в формате UnixTime на C#


8-1134496148
Korvin007
2005-12-13 20:49
2006.05.07
Скринмэйты





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский