Главная страница
    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.032 c
10-1033103025
KA_
2002-09-27 09:03
2004.08.29
CORBA-сервер "жрет" память


3-1091785162
vic
2004-08-06 13:39
2004.08.29
ADOQuery + compute


10-1023799426
Delph
2002-06-11 16:43
2004.08.29
NS и автоматическое создание сервантов


3-1091476876
snake1977
2004-08-03 00:01
2004.08.29
JOIN & ORACLE


11-1080118131
user
2004-03-24 11:48
2004.08.29
Str2DateTimeFmt - недуплит преобразование месяца :((





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