当前位置: 首页 > news >正文

QT study DAY2

作业

代码

Widget.h

class Widget : public QWidget
{Q_OBJECTpublic:Widget(QWidget *parent = nullptr);~Widget();void save_data(const QString& filename,const QString& data);
private slots:void on_lineEdit_textChanged();                //账户栏void on_lineEdit_2_textChanged();              //密码栏void on_radioButton_clicked(bool checked);     //显示密码//新增代码void on_logButton_clicked();        //登录按钮void on_listWidget_itemDoubleClicked(QListWidgetItem *item);    //listWidget双击private:Ui::Widget *ui;QFile file;
};
#endif // WIDGET_H

Widget.cpp

//新增代码//登录按键 点击事件
void Widget::on_logButton_clicked()     
{QString name = ui->lineEdit->text();QList<QListWidgetItem *> res = ui->listWidget->findItems(name,Qt::MatchExactly);if(res.isEmpty()){ui->listWidget->addItem(name);}
}
//listWidget 双击事件
void Widget::on_listWidget_itemDoubleClicked(QListWidgetItem *item) 
{int row = ui->listWidget->row(item);ui->listWidget->takeItem(row);
}

效果

双击之前

双击之后

作业

代码

Widget.h

class Widget : public QWidget
{Q_OBJECTpublic: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_add_clicked();void on_pushButton_sub_clicked();void on_pushButton_mul_clicked();void on_pushButton_div_clicked();// 其他按键void on_pushButton_clear_clicked();void on_pushButton_res_clicked();
private:Ui::Widget *ui;QString str;    // 第一个数QString ch;     // 加减乘除QString str2;   // 第二个数QString res;    // 结果int line = 1;   // 标志位
};
#endif

Widget.cpp

Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);
}Widget::~Widget()
{delete ui;
}
/*************** 数字键盘区 ***************/
void Widget::on_pushButton_0_clicked()
{if(line == 1){str+='0';ui->mainLineEdit->setText(str);}else if(line == 0){str2+='0';ui->mainLineEdit_2->setText(str2);}
}void Widget::on_pushButton_1_clicked()
{if(line == 1){str+='1';ui->mainLineEdit->setText(str);}else if(line == 0){str2+='1';ui->mainLineEdit_2->setText(str2);}
}void Widget::on_pushButton_2_clicked()
{if(line == 1){str+='2';ui->mainLineEdit->setText(str);}else if(line == 0){str2+='2';ui->mainLineEdit_2->setText(str2);}
}void Widget::on_pushButton_3_clicked()
{if(line == 1){str+='3';ui->mainLineEdit->setText(str);}else if(line == 0){str2+='3';ui->mainLineEdit_2->setText(str2);}
}void Widget::on_pushButton_4_clicked()
{if(line == 1){str+='4';ui->mainLineEdit->setText(str);}else if(line == 0){str2+='4';ui->mainLineEdit_2->setText(str2);}
}void Widget::on_pushButton_5_clicked()
{if(line == 1){str+='5';ui->mainLineEdit->setText(str);}else if(line == 0){str2+='5';ui->mainLineEdit_2->setText(str2);}
}void Widget::on_pushButton_6_clicked()
{if(line == 1){str+='6';ui->mainLineEdit->setText(str);}else if(line == 0){str2+='6';ui->mainLineEdit_2->setText(str2);}
}void Widget::on_pushButton_7_clicked()
{if(line == 1){str+='7';ui->mainLineEdit->setText(str);}else if(line == 0){str2+='7';ui->mainLineEdit_2->setText(str2);}
}void Widget::on_pushButton_8_clicked()
{if(line == 1){str+='8';ui->mainLineEdit->setText(str);}else if(line == 0){str2+='8';ui->mainLineEdit_2->setText(str2);}
}void Widget::on_pushButton_9_clicked()
{if(line == 1){str+='9';ui->mainLineEdit->setText(str);}else if(line == 0){str2+='9';ui->mainLineEdit_2->setText(str2);}
}
/*************** 加减乘除区 ***************/
void Widget::on_pushButton_add_clicked()
{ch = '+';line = 0;ui->label->setText("+");
}void Widget::on_pushButton_sub_clicked()
{ch = '-';line = 0;ui->label->setText("-");
}void Widget::on_pushButton_mul_clicked()
{ch = '*';line = 0;ui->label->setText("*");
}void Widget::on_pushButton_div_clicked()
{ch = '/';line = 0;ui->label->setText("/");
}/*************** 数字键盘区 ***************/
void Widget::on_pushButton_clear_clicked()
{if(line == 1){str.clear();ui->mainLineEdit->setText(str);}else if(line == 0){str2.clear();ui->mainLineEdit_2->setText(str2);}else if(line == 3){str.clear();str2.clear();ui->mainLineEdit->setText("");ui->mainLineEdit_2->setText("");ui->resEdit->setText("");line = 1;}
}
/*************** 数字键盘区 ***************/
void Widget::on_pushButton_res_clicked()
{//QString 转 intint index1 = str.toInt();int index2 = str2.toInt();//加减乘除if(ch == '+'){int int_res = index1 + index2;QString string_res = QString::number(int_res);ui->resEdit->setText(string_res);}else if(ch == '-'){int int_res = index1 - index2;QString string_res = QString::number(int_res);ui->resEdit->setText(string_res);}else if(ch == '*'){int int_res = index1 * index2;QString string_res = QString::number(int_res);ui->resEdit->setText(string_res);}else if(ch == '/'){int int_res = index1 / index2;QString string_res = QString::number(int_res);ui->resEdit->setText(string_res);}//说明计算完毕,再次点击C会清除所有line = 3;
}

效果

加减乘除

C键效果

http://www.lryc.cn/news/546725.html

相关文章:

  • QT-自定义参数设计框架软件
  • VUE集成Live2d
  • 【CPP面经】科大讯飞 腾讯后端开发面经分享
  • el-card 结合 el-descriptions 作为信息展示
  • GaussDB自带诊断工具实战指南
  • LeetCode 链表章节
  • SSL证书和HTTPS:全面解析它们的功能与重要性
  • 正交投影与内积空间:机器学习的几何基础
  • Qt中txt文件输出为PDF格式
  • 《HelloGitHub》第 107 期
  • Langchain解锁LLM大语言模型的结构化输出能力(多种实现方案)
  • AI数据分析:deepseek生成SQL
  • 力扣-动态规划-115 不同子序列
  • Qt C++ 开发 动态上下页按钮实现
  • 数据结构第五节:排序
  • 从文件到块: 提高 Hugging Face 存储效率
  • Android14 串口控制是能wifi adb实现简介
  • vue3中 组合式~测试深入组件:事件 与 $emit()
  • SQL-labs13-16闯关记录
  • 基于微信小程序的停车场管理系统的设计与实现
  • DAIR-V2X-R数据集服务器下载
  • table 拖拽移动
  • Linux使用笔记:Find Tree 命令
  • 数据结构入门篇——什么是数据结构。
  • MySQL-简介与基本命令
  • 汽车材料耐候性测试仪器-太阳光模拟器介绍
  • 音频3A测试--AEC(回声消除)测试
  • DeepSeek 助力 Vue3 开发:打造丝滑的弹性布局(Flexbox)
  • 六、Redis 高级功能详解:BitMap、HyperLogLog、Geo、Stream
  • WSL下使用git克隆失败解决