![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
В чем проблема? [D5, Win2k]
Grishin © (2002-03-26 13:22:00)Делаю:
DlgWnd:=TDlgWnd.Create(nil);
if DlgWnd.ShowModal=mrOk then DoSomething
DlgWnd.Free;
В модуле, где объявлен DlgWnd 2 кнопки Ok и Cancel.
Пишу уже даже явно в OkOnClick : ModalResult:=mrOk
без результата - mrOk так и не возвращает ShowModal
Grishin (2002-03-26 14:09:00) [1]Большое спасибо!
Севостьянов Игорь (2002-03-26 13:49:00) [2]Прощу прощения
для Cancel конечно же ModalResult := mrCancel
Alx2 (2002-03-26 13:47:00) [3]>Севостьянов Игорь © (26.03.02 13:45
И действительно, скорее всего так
Alx2 (2002-03-26 13:46:00) [4]Странно... у меня подобный код работает
Севостьянов Игорь (2002-03-26 13:45:00) [5]Все дело в том, что у тебя наверное в OkOnClick стоит
Close;А она и делает твой результат = mrCancel
Твой диалог => кнопка ОК = ModalResult = mrOK
кнопка Cancel = ModalResult = mrCancel
Этого будет достаточно, но если нет, то не ставь в OkOnClick Close, а просто пиши ModalResult := mrOK, для Cancel соотвественно ModalResult := mrOK, но у меня и без этого работает
procedure TForm1.Button1Click(Sender: TObject);
var
DlgWnd: TDlgWnd;
begin
DlgWnd := TDlgWnd.Create(nil);
try
if DlgWnd.ShowModal = mrOk then ShowMessage("Привет");
finally
DlgWnd.Free;
end;
end;
вопросы по мылу...