Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.09.2009, 13:19   #1
rainbow
Форумчанин
 
Регистрация: 06.09.2008
Сообщений: 156
По умолчанию Вопрос по Messagebox

Есть такая строка:
Код:
Messagebox(Form1.Handle,PChar('Записать новую базу поверх старой?'),'Внимание!',MB_OKCANCEL);
Как узнать, какую кнопку нажали OK или Cancel, чтобы написать на них соответствующее действие?
Ужас, как я устал от тупизны...
rainbow вне форума Ответить с цитированием
Старый 29.09.2009, 13:24   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Код:
 case MessageBox(Form1.Handle,'îòêðûòü ôàéë?','',MB_OKCANCEL) of
  IDOK:ShowMessage('OK');
  IDCANCEL:ShowMessage('CANCEL');
 end;
я обычно так делаю.
а поставить текстовый курсор на MessageBox и нажать ф1
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 29.09.2009, 13:25   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
if Messagebox(Form1.Handle,PChar('Записать новую базу поверх старой?'),'Внимание!',MB_OKCANCEL)=IDOK then нажата Ok
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 29.09.2009, 13:26   #4
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Начнем с того что эта функция которую ты вызвал как процедуру (а Делфи такое позволяет).
Цитата:
IDOK 1 The user chose the OK button.
IDCANCEL 2 The user chose the Cancel button.
IDABORT 3 The user chose the Abort button.
IDRETRY 4 The user chose the Retry button.
IDIGNORE 5 The user chose the Ignore button.
IDYES 6 The user chose the Yes button.
IDNO 7 The user chose the No button.
По данным родного, встроенного справочника Делфи.

Код:
x:=Messagebox(Form1.Handle,PChar('Записать новую базу поверх старой?'),'Внимание!',MB_OKCANCEL);
Дальше можешь анализировать х в любой точке своей процедуры
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с MessageBox ORBIUS Общие вопросы Delphi 6 11.03.2009 22:55
MessageBox (Просьба не пинать за вопрос) astap Windows Forms 13 27.02.2009 11:01
Зацените мой MessageBox Altera Софт 1 29.10.2008 15:17
Корректное закрытие MessageBox Tan4ik Помощь студентам 4 02.05.2008 01:21
MessageBox??? Рустам Общие вопросы Delphi 3 16.01.2008 01:26