![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Задание 1. В форму добавить четыре компонента Label
В форму добавить четыре компонента Label. Поле Label1 предназначено для вывода информационного сообщения, поля Label2 и Labels – для вывода информации о назначении полей ввода, поле Label4 – для вывода результата расчета (величины тока в цепи). После добавления компонентов надо выполнить их настройку – установить значения свойств (табл.1). В результате форма разрабатываемого приложения должна выглядеть так, как показано на рисунке 1. Таблица 1. Значения свойств компонентов Label1 – Label4
Рис. 1 Форма приложения «Сила тока» Добавить в форму две командные кнопки: Вычислить и Завершить. Командная кнопка – компонент Button – добавляется в форму точно так же, как и другие компоненты. Значок компонента Button находится на вкладке Standard. После добавления к форме двух командных кнопок нужно установить значения их свойств в соответствии с табл. 2. Таблица 2. Значения свойств компонентов Button1 и Button2.
// щелчок на кнопке Вычислить void__fastcall TForml:: ButtonlClick(TObject *Sender) { float u; // напряжение float r; // сопротивление float i; // ток // проверим, введены ли данные в поля Напряжение и Сопротивление if (((Editl-XText).Length() == 0) || ((Edit2 › Text).Length() ==0)) { MessageDlg(" Haдo ввести напряжение и сопротивление", mtInformation, TMsgDlgButtons() < < 0); if ((Editl-> Text).Length() == 0) // ничего не введено Edit1-> SetFocus(); // курсор в поле Напряжение else Edit2-> SetFocus(); // курсор в поле Сопротивление return; }; // получить данные из полей ввода u = StrToFloat(Editl-> Text); r = StrToFloat(Edit2-> Text); // вычислить силу тока try { i = u/r; } catch (EZeroDivide & e) { ShowMessage(" Величина сопротивления не должна быть равна нулю"); Edit2-> SetFocus(); // курсор в поле Сопротивление return; } // вывести результат в поле Label4 Label4-> Caption = " Ток: " + FloatToStrF(i, ffGeneral, 7.2) + " А"; } // нажатие клавиши в поле Напряжение void __fastcall TForml:: EditlKeyPress(TObject *Sender, char SKey) { // коды запрещенных клавиш заменим нулем, в результате // символы этих клавиш в поле редактирования не появятся // Key – код нажатой клавиши // проверим, является ли символ допустимым if ((Key > = '0') & & (Key < = '9'}) // цифра return; // Глобальная переменная DecimalSeparator // содержит символ, используемый в качестве разделителя // при записи дробных чисел if (Key == DecimalSeparator) { if ((Editl-> Text).Pos(DecimalSeparator)! = 0) Key =0; // разделитель уже введен return; } if (Key == VK_BACK) // клавиша < Backspace> return; if (Key == VK_RETURN) // клавиша Enter { Edit2-> SetFocus(); return; }; // остальные клавиши запрещены Key=0; не отображать символ } // нажатие клавиши в поле Сопротивление void__fastcall TForml:: Edit2KeyDown(TObject *Sender, WORD & Key, TSHIFTState SHIFT) { if ((Key > = '0') & & (Key < = '9')) // цифра return; if (Key == DecimalSeparator) { if ((Edit2-> Text).Pos(DecimalSeparator)! = 0) Key =0; // разделитель уже введен return; } if (Key == VK_BACK) // клавиша < Backspace> return; if (Key == VK_RETORN) // клавиша Enter ( Buttonl-> SetFocus(); // переход к кнопке Вычислить // повторное нажатие клавиши Enter // активизирует процесс вычисления тока return; }; // остальные клавиши запрещены Key = 0; не отображать символ } // щелчок на кнопке Завершить void __fastcall TForml:: Button2Click(TObject *Sender) { Forml-> Close(); // закрыть форму приложения }
|