Добавление кнопки десятичной точки
Для добавления кнопки с точкой («.») выполните следующие действия:
- Выберите кнопку в дизайнере.
- Щелкните правой кнопкой мыши и выберите «Перейти к слоту».
- Выберите clicked().
Добавьте следующий код в обработчик нажатия кнопки:
if (!ui->result->text().contains('.')) {
ui->result->setText(ui->result->text() + ".");
}
Этот код добавляет точку к текущему тексту в поле вывода только если точка в тексте отсутствует.
Добавление кнопки «плюс/минус»
Для кнопки «плюс/минус» создайте метод changeSign():
void MainWindow::changeSign() {
QString text = ui->result->text();
double num = text.toDouble();
num *= -1;
ui->result->setText(QString::number(num));
}
Этот метод преобразует текст в число, умножает его на -1 и отображает результат. Подключите этот метод к кнопке «плюс/минус» в дизайнере.
Добавление кнопки «%»
Для кнопки «%» используйте следующий код в обработчике нажатия кнопки:
else if (button->text() == "%") {
double num = ui->result->text().toDouble();
num *= 0.01;
ui->result->setText(QString::number(num));
}
Этот код преобразует текущее число в процентное значение (умножение на 0.01) и отображает результат.
В этом уроке были добавлены кнопки десятичной точки, «плюс/минус» и «%», расширив функциональность калькулятора. Теперь калькулятор обрабатывает отрицательные числа и вычисляет процентные значения.