Создание кнопки очистки
Создадим кнопку «C» для очистки калькулятора. Реализуем существующий метод: деактивируем кнопки (+, -, *, /, =) установив их свойство isChecked в false. Это предотвратит срабатывание операций после нажатия «=» после очистки. Вместо отображаемого текста установим значение «0». После сохранения и запуска проверим: 59 — 6 = 53, умножим на 9, получим 477. Нажатие «C» очищает поля, и «=» не производит действий из-за деактивации кнопок. Ввод новых данных возможен.
Исправление ошибки ввода десятичных чисел
Ошибка: ввод «0.», затем «.» и «0» (например, 0.01) приводит к преобразованию в 0 из-за приведения к типу double. Добавим проверку:
if (ui->resultShow->text().contains(".") && ui->button_0->text() == "0") {
ui->newLabel->setText(ui->newLabel->text() + ui->button_0->text());
} else {
//Преобразование к double и дальнейшие действия
}
Теперь «0.00» отображается как строка, а не преобразуется в 0. Проверка: 0.002 + 0.0096 = 0.0116.
Калькулятор готов, все функции работают. В курсе освоена работа с Qt Creator, созданы приложения и полноценный калькулятор, изучены основы программирования на C++. Некоторые темы не рассмотрены, но основные моменты изучены. Дополнительные материалы, включая полный видеокурс, домашние задания и готовый код, доступны на сайте [ссылка_на_сайт].