Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Вниз

Возвращаемое значение ShowModal   Найти похожие ветки 

 
Чайник ©   (2010-04-05 15:08) [0]

Функция создает форму и вызывает ее ShowModal:


function AddNewPassport : TModalResult;
begin
  Result := mrCancel;
  FNewPass := TFNewPass.Create(Application);
  try
    Result := FNewPass.ShowModal;
  finally
    FNewPass.Free;
  end;
end;


На самой форме расположен TListBox, в зависимости от выбранной строки вызываются различные функции, возвращающие TModalResult:


procedure TFNewPass.btnOKClick(Sender: TObject);
begin
  case lstKindPass.ItemIndex of
  1: FNewPass.ModalResult := AddNewPassVessPress;
  2: FNewPass.ModalResult := AddNewPassPipeline;
  ...
  else
     FNewPass.ModalResult := mrCancel;
  end;
  Close;
end;


Перкд закрытием формы FNewPass.ModalResult содержит именно те значения, которые фозвращают вызываемые функции. Но в строке

    Result := FNewPass.ShowModal;

в результат пишется исключительно mrCancel !

Что я делаю не так???

P.S. Я Чайник! Я Чайник! Я Чайник! Я Чайник!


 
Игорь Шевченко ©   (2010-04-05 15:12) [1]


> Перкд закрытием формы FNewPass.ModalResult содержит именно
> те значения, которые фозвращают вызываемые функции


а как ты закрываешь форму ? :)


 
icWasya ©   (2010-04-05 15:13) [2]

procedure TCustomForm.Close;
var
 CloseAction: TCloseAction;
begin
 if fsModal in FFormState then
   ModalResult := mrCancel //<<--!!!!!!!!!!!!!!!!!!!!!1
 else
   ...
end;


 
Чайник ©   (2010-04-05 15:16) [3]


> Игорь Шевченко ©   (05.04.10 15:12) [1]
> а как ты закрываешь форму ? :)


else
    FNewPass.ModalResult := mrCancel;
 end;
 Close;  <<<<<<<<
end;


 
Slym ©   (2010-04-05 15:17) [4]

icWasya ©   (05.04.10 15:13) [2]
Чайник ©   (05.04.10 15:08)
procedure TFNewPass.btnOKClick(Sender: TObject);
begin
 case lstKindPass.ItemIndex of
 1: FNewPass.ModalResult := AddNewPassVessPress;
 2: FNewPass.ModalResult := AddNewPassPipeline;
 ...
 else
    FNewPass.ModalResult := mrCancel;
 end;
 //Close;
end;


 
Anatoly Podgoretsky ©   (2010-04-05 16:03) [5]

Убери Close оно убивает ранее установленые значения, меняит их на Cancel


 
Чайник ©   (2010-04-05 16:17) [6]


> Slym ©   (05.04.10 15:17) [4]


> Anatoly Podgoretsky ©   (05.04.10 16:03) [5]


Спасибо!


 
Правильный$Вася   (2010-04-05 16:59) [7]

присваивание модалрезалта само по себе закрывает форму


 
Плохиш ©   (2010-04-05 22:52) [8]


>   1: FNewPass.ModalResult := AddNewPassVessPress;

дерьмокод.


 
Кибальчиш   (2010-04-06 14:17) [9]


> Плохиш ©   (05.04.10 22:52) [8]
> дерьмокод.

дерьмопост.


 
Anatoly Podgoretsky ©   (2010-04-06 14:25) [10]

Плохиш указал причину, а ты что сказать то хотел?



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.068 c
11-1220788935
andreykorol
2008-09-07 16:02
2010.08.27
TKolListView


15-1268371530
vajo
2010-03-12 08:25
2010.08.27
Непонятки с сетью на ноуте


2-1270013386
AlexeyIII
2010-03-31 09:29
2010.08.27
Автозапуск в реестре.


2-1273127792
Riply
2010-05-06 10:36
2010.08.27
Конвертация cpp-файла в obj, понятный для Delphi (RAD 2010)


2-1270656345
Беликов А.А,
2010-04-07 20:05
2010.08.27
ADOQuery и TThread





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский