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

Вниз

Почему получается исключение?   Найти похожие ветки 

 
ЮрийК ©   (2004-08-16 19:27) [0]

"var
 FormReminder: TFormReminder;

implementation

{$R *.DFM}

 procedure TFormReminder.ShowReminder(const num: Integer);
 begin
   if (FormReminder = nil) then
     Application.CreateForm(TFormReminder, FormReminder);
   with FormReminder do begin
     case num of
       1:
       begin
         re.Text := Msg1;
       end;
       2:
       begin
         re.Text := Msg2;
       end;
       3:
       begin
         re.Text := Msg3;
       end;
     end;
     ShowModal;
   end;
   FormReminder.Free;
   FormReminder := nil;
 end;
end.
"

Без "with FormReminder do" получаю исключение, а с оным всё нормально. Почему?


 
ламер ©   (2004-08-16 19:30) [1]

потому что при вызове TFormReminder.ShowReminder форма ещё не создана и Self = nil.


 
TUser ©   (2004-08-16 21:06) [2]

потому что num - Integer, а case можно писать только с перечисляемыми типами и всякими byte/chortint


 
ламер ©   (2004-08-16 21:08) [3]

TUser ©   (16.08.04 21:06) [2]
потому что num - Integer, а case можно писать только с перечисляемыми типами и всякими byte/chortint

полная чушь.


 
Fay ©   (2004-08-16 21:11) [4]

Чушь не полная, а частичная 8)
TUser просто забыл, что Integer - очень даже перечисляемый тип


 
Андрей Сенченко ©   (2004-08-16 21:11) [5]

ламер ©   (16.08.04 21:08) [3]
полная чушь.

Работающий пример с не-opdinal типом приведете ?


 
Fay ©   (2004-08-16 21:17) [6]

chortint - это по-французски, что-ли?


 
ламер ©   (2004-08-16 21:22) [7]

> Андрей Сенченко ©   (16.08.04 21:11) [5]

если вы расскажете мне, что такое не-opdinal, то попытаюсь. но по-моему, и так понятно, что именно я имел в виду в 3-м сообщении. а именно:
1. integer - это ordinal-тип;
2. результатом использования case с не-ordinal"ом, будет ошибка времени компиляции, но никак не исключение.


 
Андрей Сенченко ©   (2004-08-16 21:24) [8]

ламер ©   (16.08.04 21:22) [7]

Собственно в [4] суть ответа. Не чушь, а просто ошибка.


 
TUser ©   (2004-08-16 21:44) [9]

Да, простите. Лоханулся.



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

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

Наверх





Память: 0.46 MB
Время: 0.043 c
14-1091778547
Knight
2004-08-06 11:49
2004.08.29
Помехи на экране монитора...


14-1091822110
Undert
2004-08-06 23:55
2004.08.29
Хех


8-1085918904
Ivolg
2004-05-30 16:08
2004.08.29
Изменить размер изабражения?


3-1091686564
strelok-47
2004-08-05 10:16
2004.08.29
Об отрисовке grid а


14-1091808209
Aspi
2004-08-06 20:03
2004.08.29
DOOM 3





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский