1.在注册登录的练习里面,追加一个QListWidget 项目列表
要求:点击注册之后,将账号显示到 listWidget上面去
以及,在listWidget中双击某个账号的时候,将该账号删除
cpp
void Widget::on_pushButton_clicked()
{
QString name = ui->lineEdit->text();
if (ui->listWidget->findItems(name, Qt::MatchExactly).isEmpty())
{
ui->listWidget->addItem(name);
}
}
void Widget::on_listWidget_itemDoubleClicked(QListWidgetItem *item)
{
if (item)
{
ui->listWidget->takeItem(ui->listWidget->row(item));
delete item;
}
}
运行结果:

双击删除

2.完成一个计算器,ui界面如下
完成 +-*/计算功能并且在对应位置显示对应的数据

widget.cpp
cpp
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
}
Widget::~Widget()
{
delete ui;
}
void Widget::on_pushButton_0_clicked()
{
// if (this->ui->lineEdit->text().isEmpty()){return;}
// if (this->ui->lineEdit_2->text().isEmpty()){return;}
if (this->ui->lineEdit_1->text().isEmpty())
{
num1 += "0";
this->ui->lineEdit->setText(num1);
}
else
{
num2 += "0";
this->ui->lineEdit_2->setText(num2);
}
}
void Widget::on_pushButton_1_clicked()
{
if (this->ui->lineEdit_1->text().isEmpty())
{
num1 += "1";
this->ui->lineEdit->setText(num1);
}
else
{
num2 += "1";
this->ui->lineEdit_2->setText(num2);
}
}
void Widget::on_pushButton_2_clicked()
{
if (this->ui->lineEdit_1->text().isEmpty())
{
num1 += "2";
this->ui->lineEdit->setText(num1);
}
else
{
num2 += "2";
this->ui->lineEdit_2->setText(num2);
}
}
void Widget::on_pushButton_3_clicked()
{
if (this->ui->lineEdit_1->text().isEmpty())
{num1 += "3";
this->ui->lineEdit->setText(num1);
}
else
{num2 += "3";
this->ui->lineEdit_2->setText(num2);
}
}
void Widget::on_pushButton_4_clicked()
{
if (this->ui->lineEdit_1->text().isEmpty())
{num1 += "4";
this->ui->lineEdit->setText(num1);
}
else
{num2 += "4";
this->ui->lineEdit_2->setText(num2);
}
}
void Widget::on_pushButton_5_clicked()
{
if (this->ui->lineEdit_1->text().isEmpty())
{num1 += "5";
this->ui->lineEdit->setText(num1);
}
else
{num2 += "5";
this->ui->lineEdit_2->setText(num2);
}
}
void Widget::on_pushButton_6_clicked()
{
if (this->ui->lineEdit_1->text().isEmpty())
{num1 += "6";
this->ui->lineEdit->setText(num1);
}
else
{num2 += "6";
this->ui->lineEdit_2->setText(num2);
}
}
void Widget::on_pushButton_7_clicked()
{
if (this->ui->lineEdit_1->text().isEmpty())
{num1 += "7";
this->ui->lineEdit->setText(num1);
}
else
{num2 += "7";
this->ui->lineEdit_2->setText(num2);
}
}
void Widget::on_pushButton_8_clicked()
{
if (this->ui->lineEdit_1->text().isEmpty())
{num1 += "8";
this->ui->lineEdit->setText(num1);
}
else
{num2 += "8";
this->ui->lineEdit_2->setText(num2);
}
}
void Widget::on_pushButton_9_clicked()
{
if (this->ui->lineEdit_1->text().isEmpty())
{num1 += "9";
this->ui->lineEdit->setText(num1);
}
else
{num2 += "9";
this->ui->lineEdit_2->setText(num2);
}
}
void Widget::on_pushButton_10_clicked()
{
ope = "+";
this->ui->lineEdit_1->setText(ope);
}
void Widget::on_pushButton_11_clicked()
{
ope = "-";
this->ui->lineEdit_1->setText(ope);
}
void Widget::on_pushButton_12_clicked()
{
ope = "×";
this->ui->lineEdit_1->setText(ope);
}
void Widget::on_pushButton_13_clicked()
{
ope = "➗";
this->ui->lineEdit_1->setText(ope);
}
void Widget::on_pushButton_15_clicked()
{
num1.clear();
num2.clear();
ui->lineEdit->setText("");
ui->lineEdit_1->setText("");
ui->lineEdit_2->setText("");
ui->lineEdit_3->setText("");
}
void Widget::on_pushButton_14_clicked()
{
bool b1, b2;
double n1 = ui->lineEdit->text().toDouble(&b1);
double n2 = ui->lineEdit_2->text().toDouble(&b2);
if (ope == "+")
{
res = n1 + n2;
}
else if (ope == "-")
{
res = n1 - n2;
}
else if (ope == "×")
{
res = n1 * n2;
}
else if (ope == "➗")
{
if (n2 != 0)
{
res = n1 / n2;
}
else
{
ui->lineEdit_3->setText("除数不能为零");
return;
}
}
ui->lineEdit_3->setText(QString::number(res));
}
widget.h
cpp
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include <QLineEdit>
#include <QPushButton>
QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = nullptr);
~Widget();
private slots:
void on_pushButton_0_clicked();
void on_pushButton_1_clicked();
void on_pushButton_2_clicked();
void on_pushButton_3_clicked();
void on_pushButton_4_clicked();
void on_pushButton_5_clicked();
void on_pushButton_6_clicked();
void on_pushButton_7_clicked();
void on_pushButton_8_clicked();
void on_pushButton_9_clicked();
void on_pushButton_10_clicked();
void on_pushButton_11_clicked();
void on_pushButton_12_clicked();
void on_pushButton_13_clicked();
void on_pushButton_15_clicked();
void on_pushButton_14_clicked();
private:
Ui::Widget *ui;
QString num1;
QString num2;
QString ope;
double res;
};
#endif // WIDGET_H
运行结果:

