C++ Builder - вопросы программирования


Листинг 2 3



Листинг 2.3.

Обработка исключений
void __fastcall TForml::ButtonlClick(TObject *Sender) { float u; // напряжение float r; // сопротивление float i; // ток // получить данные из полей ввода // возможно исключение — ошибка преобразования строки в число try { u = StrToFloat(Editl->Text); г = StrToFloat(Edit2->Text); } catch (EConvertError &e) ( ShowMessage("При вводе дробных чисел используйте запятую."); return; } // вычислить ток // возможно исключение — деление на ноль try { i = u/r; } catch (EZeroDivide &e) { ShowMessage("Величина сопротивления не должна быть равна нулю"); Edit2->SetFocus(); // курсор а поле Сопротивление return; } // вывести результат в поле метки Label4->Caption = "Ток : " + FloatToStrF(i,ffGeneral,7,3); }
В приведенной функции для вывода сообщений в случае возникновения исключений использована функция ShowMessage, которая выводит на экран окно с текстом и командной кнопкой ОК. Инструкция вызова функции ShowMessage выглядит так: ShowMessage(Сообщение) ;

Где сообщение — строковая константа (текст, который надо вывести). На Рисунок 2.36 приведен вид окна сообщения, полученного в результате выполнения инструкции: ShowMessage("Величина сопротивления не должна быть равна нулю.");









Начало  Назад  Вперед


Книжный магазин