Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

try ..... except


Saposo ©   (2007-02-16 15:32:00) 

Подскажите, плиз.
По нажатию кнопки обрабатывается следующий код:
try
table1.TableName:=DBLookUpComboBox1.KeyValue+'.db';
Table1.Open;
except on EDBEngineError do begin exit;
end;

после запуска программы DBLookUPComboBox пустой (там ниче не выбрано, просто пусто) и если нажать кнопку ничего не выбрав из списка возникает ошибка EVariantTypeCastError. Подскажите как мне обработать эту исключительную ситуацию в указанном выше коде? Можно ли в одном try ... except обрабатывать несколько ситуаций за раз? И как это делается?


Сергей М.   (2007-02-16 16:55:00) [1]


> или изучать основы или менять профессию.


.. или, в конце концов, не прикидываться тут дуриком, а попросить перевести конкретную цитату из справки с буржуйского на великий и могучий.


Сергей М.   (2007-02-16 16:52:00) [2]


> Saposo   (16.02.07 16:49) [6]


except
 on e: ТакойТоКлассИсключения do ... то-то;
 on e: ДругойКлассИсключения do ... сё-то;
..
 on e: ТристалохматыйКлассИсключения do ... еще хрензнает что-то;
else
.. а иначе - мыло+веревка)

end;


Плохиш   (2007-02-16 16:52:00) [3]

C английским совсем туго!((((

Если проблемы с чтением примеров, то надо или изучать основы или менять профессию.


Saposo   (2007-02-16 16:50:00) [4]


> А справку для except посмотреть религия не позволяет? Или
> опять справки нет?

C английским совсем туго!((((


Saposo   (2007-02-16 16:49:00) [5]

Мне в соответствие с ошибкой нужно выводить определенное сообщение. В описанном коде может возникать ошибка если в комбо боксе ничего не выбрано, либо если не создана таблица (в коде видно, что к содержимому комбобокса добавляется расширение таблицы, после ее выбора по нажатию на кнопке таблица открывается в DBGRID). Можно ли обработать в одном try exept несколько типов ошибок? Как это сделать? И если нельзя, то как быть в этом случае?


Плохиш   (2007-02-16 16:30:00) [6]


> Подскажите как мне обработать эту исключительную ситуацию
> в указанном выше коде? Можно ли в одном try ... except обрабатывать
> несколько ситуаций за раз? И как это делается?

А справку для exceptпосмотреть религия не позволяет? Или опять справки нет?


DevilDevil   (2007-02-16 15:41:00) [7]

:)))))))))))))) надо бы и третий раз... для счастливого числа )


DevilDevil   (2007-02-16 15:38:00) [8]

1) это не должно компилировться; может быть так:
try
table1.TableName:=DBLookUpComboBox1.KeyValue+'.db';
Table1.Open;
except on EDBEngineError do begin exit; END:
end;


2) а) Попробуй так:

try
table1.TableName:=DBLookUpComboBox1.KeyValue+'.db';
Table1.Open;
except ;
end;


б) Запускай не из среды; в среде всегда эксепшены выскакивают.


DevilDevil   (2007-02-16 15:38:00) [9]

1) это не должно компилировться; может быть так:
try
table1.TableName:=DBLookUpComboBox1.KeyValue+'.db';
Table1.Open;
except on EDBEngineError do begin exit; END:
end;


2) а) Попробуй так:

try
table1.TableName:=DBLookUpComboBox1.KeyValue+'.db';
Table1.Open;
except ;
end;


б) Запускай не из среды; в среде всегда эксепшены выскакивают.


Efir   (2007-02-16 15:36:00) [10]

А ты запусти не из Delphi, а отдельно скомпилированный exe.


Наверх

Титульная страница Поиск, карта сайта Написать письмо