Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.29;
Скачать: CL | DM;

Вниз

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

 
ЮрийК ©   (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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.132 c
1-1092636340
Arhitektor
2004-08-16 10:05
2004.08.29
Каким образом можно получить доступ к файлу?


14-1091960547
Тимур
2004-08-08 14:22
2004.08.29
Чистка реестра


1-1092491484
SPeller
2004-08-14 17:51
2004.08.29
Как различить текстовый файл от двоичного?


14-1092236444
ИМХО
2004-08-11 19:00
2004.08.29
VAT


3-1091687674
РВА
2004-08-05 10:34
2004.08.29
Постаничное суммирование в FRep