Главная страница
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.044 c
1-1092306205
Cosinus
2004-08-12 14:23
2004.08.29
Поиск в бинарном файле по маске


1-1092139498
Андеев А.Р
2004-08-10 16:04
2004.08.29
xls-ы собрать в один


3-1091703869
mak_kam
2004-08-05 15:04
2004.08.29
Проблема с ADO (Access) под WinXP


1-1092590461
hawkins
2004-08-15 21:21
2004.08.29
У меня проблема с MDI окном...


14-1091338374
ИМХО
2004-08-01 09:32
2004.08.29
Cartoon Network