源码上传至:https://github.com/data1213/QT_Studnt_Manager
添加学生信息界面:
添加学生实现代码:
需求:
1、点击确定按钮时,能够获取当前界面的所有控件的输入信息,在一个新的确认信息界面进行显式,等待确认。
2、在确认界面中,确认ok,点击确定按钮能够将学生信息写入到文件中保存起来,同时,将添加学生信息的界面恢复到初始值状态。
1 /*********addstudents.h********/ 2 #ifndef ADDSTUDENTS_H 3 #define ADDSTUDENTS_H 4 5 #include <QDialog> 6 #include <QButtonGroup> 7 8 namespace Ui { 9 class AddStudents; 10 } 11 12 class AddStudents : public QDialog 13 { 14 Q_OBJECT 15 16 public: 17 explicit AddStudents(QWidget *parent = nullptr); 18 ~AddStudents(); 19 void clear_on_addstudent_ok(); //确认界面点击确定之后,恢复添加学生信息界面的初始值 20 void write_to_file(QString src); //写文件 21 22 private slots: 23 void my_add_students_info_ok_slots(); //添加学生信息界面的确定按钮槽函数 24 void my_add_students_info_cancel_slots();//添加学生信息界面的取消按钮槽函数 25 private: 26 QButtonGroup *sexGroup; //存放性别单选按钮 27 QButtonGroup *habbitGroup; //存放爱好多选按钮 28 Ui::AddStudents *ui; //添加学生信息界面的UI 29 }; 30 31 #endif // ADDSTUDENTS_H
在addstudents.cpp中:
1、首先看构造函数:
1>需要绑定当前界面的按钮与槽函数,需要点击发送信号的有两个按钮:确定按钮+取消按钮
2>对于性别一栏,两个单选按钮,是互斥的,只能选择其中一个,当一个被选中,那么另外一个一定是未选中状态。
3>对于爱好一栏:四个选项是多选的,可以被同时选中、部分被选中、或者都不选。
这里做些支持处理,使其具有单选功能/多选功能,编组——QButtionGroup
1 AddStudents::AddStudents(QWidget *parent) :QDialog(parent),ui(new Ui::AddStu