![]()
|
|||
voidfastcall TForml::EditlKeyPress(TObject *Sender, charСтр 1 из 4Следующая ⇒
Задача №1 Конвертор: Блок-схема:
Текст программы: // нажатие клавиши в поле Цена voidfastcall TForml::EditlKeyPress(TObject *Sender, char &Key) { // код запрещенного символа заменим нулем, в результате // символ в поле редактирования не появится // 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 fastcallTForml::Edit2KeyPress(TObject *Sender, char&Key) { 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_RETURN) // клавиша <Enter> I Buttonl->SetFocus();// переход к кнопке Вычислить // повторное нажатие клавиши <Enter> // активизирует процесс вычисления денег return; // остальные клавиши запрещены Key = 0 ; // не отображать символ // щелчок на кнопке Пересчет void fastcallTForml::ButtonlClick(TObject *Sender) floatusd; // цена в долларах floatк; // курс floatrub; // цена в рублях // проверим, введены ли данные в поля Цена и Курс if(((Editl->Text).Length() ==0) || ((Edit2->Text).Length)) == 0)) { MessageDlgC'Haflo ввсети цену и курс", mtlnformation, TMsgDlgButtons() ≪ mbOK, 0); if((Editl->Text).Length!) == 0) Editl->SetFocus(); // курсор в поле Цена
|
|||
|