![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Application.MessageBox. Обработка нажатия на «Справка» [D5, Win95/98]
Inan61 © (2003-01-13 18:50:00)Пример:
procedure TForm1.Button1Click(Sender: TObject);
begin
case Application.MessageBox("Текст сообщения", "Ошибка",MB_ICONSTOP + MB_YESNO + MB_Help) of
idYes:ShowMessage("Да");
idNo: ShowMessage("Нет");
end;
end;
Значение idHelp для MessageBox не существует, поэтому нажатие на кнопку «Справка» обрабатывал так:
private
procedure AppMessage(var Msg: TMsg; var Handled: Boolean);
procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnMessage := Form1.AppMessage;
end;
procedure TForm1.AppMessage(var Msg: TMsg; var Handled: Boolean);
begin
if Msg.message = WM_HELP then
begin
ShowMessage("Справка");
Handled := True;
end;
end;
Результат нулевой. В чём я не прав? Подправьте мой код.
gsu (2003-01-13 21:14:00) [1]как не хочет, я проверил, а цветы дарил ? (-:|~
Inan61 (2003-01-13 21:09:00) [2]
> gsu © (13.01.03 19:03)
Что-то так не хочет...
gsu (2003-01-13 19:03:00) [3]А фиг знает
if (Msg.message = wm_KeyDown)
and (msg.lParam = 3866625)
then
begin
Handled := True;
ShowMessage("F1");
end;
Так будет работать, а кстати чем OnKeyDown не подходит