![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Подскажите пожалуйста, что нужно в условии if прописать чтобы определить какой ответ дал пользователь?
Пробовал так, но так выходить ошибка: Код:
MessageBox(
Self.Handle
, PChar('...: "'+DBGrid1.Fields[0].asString+' '+DBGrid1.Fields[1].asString+'"...?')
, PChar('....')
, MB_YESNO + MB_ICONWARNING
)=1
if MB_YES then
begin
...
end |
|
#2
|
||||
|
||||
|
Функция возвращает число. Его надо сохранить и заюзать.
|
|
#3
|
|||
|
|||
|
Цитата:
|
|
#4
|
||||
|
||||
|
Код:
iRes := MessageBox(...) if iRes = ... then ... Код:
if MessageBox(...) = ... then ... |
| Этот пользователь сказал Спасибо Bargest за это полезное сообщение: | ||
DDim1000 (07.01.2013)
| ||
|
#5
|
|||
|
|||
|
Цитата:
|
|
#6
|
||||
|
||||
|
Гугл - это не круто, да? тыц тыц тыц (подзаголовок Return value)
|
|
#7
|
|||
|
|||
|
вот тебе пример только на основе месседждлг ... вообщем одна и таже зараза ...
Код:
if MessageDlg('Вы не промазали? Точно изменить 1 запись?', mtWarning,
mbOKCancel, 0) = mrOK then
beginmrOK это делфийская константа 1 ... можно вместо нее написать "...= 1 then..." 1 будет одно и тоже .... upd ну вот на твоём примере будет както так ... Код:
if MessageBox(Self.Handle,
PChar('...:...?'), PChar('....'), MB_YESNO + MB_ICONWARNING) = mrYes then
beginПоследний раз редактировалось caHek-2x, 10.01.2013 в 10:44. |
|
#8
|
||||
|
||||
|
а
Код:
if MessageBox(Handle, '', '', MB_OKCANCEL)=IDOK then Код:
if MessageBox(Handle, '', '', MB_YESNO)=IDYES then Код:
const
{ Dialog Box Command IDs }
{$EXTERNALSYM IDOK}
IDOK = 1; ID_OK = IDOK;
{$EXTERNALSYM IDCANCEL}
IDCANCEL = 2; ID_CANCEL = IDCANCEL;
{$EXTERNALSYM IDABORT}
IDABORT = 3; ID_ABORT = IDABORT;
{$EXTERNALSYM IDRETRY}
IDRETRY = 4; ID_RETRY = IDRETRY;
{$EXTERNALSYM IDIGNORE}
IDIGNORE = 5; ID_IGNORE = IDIGNORE;
{$EXTERNALSYM IDYES}
IDYES = 6; ID_YES = IDYES;
{$EXTERNALSYM IDNO}
IDNO = 7; ID_NO = IDNO;
{$EXTERNALSYM IDCLOSE}
IDCLOSE = 8; ID_CLOSE = IDCLOSE;
{$EXTERNALSYM IDHELP}
IDHELP = 9; ID_HELP = IDHELP;
{$EXTERNALSYM IDTRYAGAIN}
IDTRYAGAIN = 10;
{$EXTERNALSYM IDCONTINUE}
IDCONTINUE = 11; |
|
#9
|
|||
|
|||
|
mrOk и idOk это одно и тоже вообщем ...
|
|
#10
|
||||
|
||||
|
С какого перепугу? Если константы совпадают, это не означает одно и тоже. Что в Windows, что в Дельфи эти константы однажды могут поменяться. И что тогда делать будешь?
|
|
#11
|
|||
|
|||
|
Цитата:
Код:
const mrNone = 0; mrOk = idOk; mrCancel = idCancel; mrAbort = idAbort; mrRetry = idRetry; mrIgnore = idIgnore; mrYes = idYes; mrNo = idNo; mrAll = mrNo + 1; mrNoToAll = mrAll + 1; mrYesToAll = mrNoToAll + 1; mrClose = mrYesToAll + 1; в теории и конец света когда то наступит ... и что тогда ты будешь делать ?) |
|
#12
|
||||
|
||||
|
Константы на то и константы, чтобы пользоваться их символьными именами а не значениями. Производитель всегда оставляет за собой право изменить их (и не только их) не поставив лично тебя в известность. Ну а конец света, это круто - наверно от большого ума добавлено.
|
|
#13
|
|||
|
|||
|
ну спасибо за комплименты про ум ...
я не предлагал пользоваться значениями ... я сказал что константы mrOk и idOk одно и тоже ... в текущих средах они одинаковы и я привел вырезку из файла ... где идет их приравнивание ... если виндоус обновит их значение то и проги скоплированные придется переделывать т.к. они скомпилированы в той среде где прописаны именно те значения констант что были "типо до изменения их в винде" это раз ... два я не очень уверен что виндоус будет менять значения констант ... от этого может много прог вылететь ... поэтому и привел сравнение про конец света ... три... делфи когда обновляется тоже многое может изменить и как ты выразился "что ты будешь делать" ... ты ничего не предъявишь и будешь переделывать ... как с переходом с 7 на 10 если не ошибаюсь в версиях ... у многих проблема с кодировками пошла ... приходилось дописывать править проэкты ... Последний раз редактировалось caHek-2x, 10.01.2013 в 23:20. |