Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

В чем проблема? [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;



вопросы по мылу...


Наверх

Титульная страница Поиск, карта сайта Написать письмо