C++ QT

1> 将系统给定的工程文件相关代码全部进行注释

2> 将登录框的两个按钮进行实现,登录按钮需要手动连接自定义的槽函数,取消按钮右键转到槽

对于登录按钮对应的槽函数中实现:判断输入的账号是否等于"admin",密码是否为“123456”,如果匹配成功,则输出登录成功后关闭界面

如果匹配失败,输出账号和密码不匹配,请重新输入,并将密码框内容清空

对于取消按钮,在对应的槽函数中,关闭整个界面即可

头文件

#ifndef FIRSTWINDOW_H
#define FIRSTWINDOW_H
//防止重复定义#include        //父类的头文件
#include 
#include 
#include 
#include QT_BEGIN_NAMESPACE
namespace Ui { class FirstWindow; }      //命名空间的声明,ui界面生成的头文件的命名空间
QT_END_NAMESPACEclass FirstWindow : public QWidget    //自定义的类,继承自QMainWind类
{Q_OBJECT          //处理信号与槽的元对象signals:void my_signal();public:FirstWindow(QWidget *parent = nullptr);    //构造函数的声明~FirstWindow();        //析构函数的声明QPushButton *btn1 = new QPushButton(this);QPushButton *btn2 = new QPushButton(this);QLineEdit *edit1 = new QLineEdit(this);QLineEdit *edit2 = new QLineEdit(this);QLabel *lab1 = new QLabel(this);QLabel *lab2 = new QLabel(this);QLabel *lab3 = new QLabel(this);
private slots:void my_slot();void my_slot1();
private:Ui::FirstWindow *ui;    //指向ui界面的指针,如果使用拖拽后的组件,需要使用该指针找到};
#endif // FIRSTWINDOW_H

源文件

#include "firstwindow.h"           //包含自定义的头文件
#include "ui_firstwindow.h"        //包含ui界面的头文件FirstWindow::FirstWindow(QWidget *parent)    //构造函数的实现: QWidget(parent)                        //调用父类的构造函数, ui(new Ui::FirstWindow)                //给指针成员初始化空间
{ui->setupUi(this);                 //调用ui界面中的设置界面函数//设置窗口固定大小this->setFixedSize(this->size());//设置窗口标题this->setWindowTitle("myQQ");//设置窗口图标this->setWindowIcon(QIcon(":/icon/QQ.png"));btn1->setText("登录");btn1->resize(100,50);btn1->move(400,500);btn1->setIcon(QIcon(":/icon/denglu.png"));btn2->setText("取消");btn2->resize(100,50);btn2->move(550,500);btn2->setIcon(QIcon(":/icon/quxiao.png"));//行编辑器edit1->resize(500,50);edit1->move(200,340);edit1->setPlaceholderText("账号");edit2->resize(500,50);edit2->move(200,400);edit2->setPlaceholderText("密码");edit2->setEchoMode(QLineEdit::Password);lab1->resize(40,40);lab1->move(150,340);lab1->setScaledContents(true);lab1->setPixmap(QPixmap(":/icon/zhanghao.png"));lab2->resize(40,40);lab2->move(150,400);lab2->setScaledContents(true);lab2->setPixmap(QPixmap(":/icon/denglumima.png"));lab3->resize(800,300);lab3->setScaledContents(true);lab3->setPixmap(QPixmap(":/icon/mmexport1682301765090.jpg"));connect(btn1,SIGNAL(clicked()),this,SLOT(my_slot()));connect(btn2,SIGNAL(clicked()),this,SLOT(my_slot1()));
}FirstWindow::~FirstWindow()      //析构函数的定义
{delete ui;
}//自定义槽函数
void FirstWindow::my_slot()
{if(edit1->text() == "admin" && edit2->text() == "123456"){qDebug()<<"登录成功";close();}else {qDebug()<<"账号和密码错误";edit2->clear();
}
}
//自定义槽函数
void FirstWindow::my_slot1()
{close();
}

测试文件

#include "firstwindow.h"         //引入自定义头文件#include           //引入应用程序的对象int main(int argc, char *argv[])      //主函数
{QApplication a(argc, argv);      //实例化应用程序的对象FirstWindow w;                  //使用自定义对象在栈区实例化一个对象w.show();                       //调用show函数将界面显示出来return a.exec();               //阻塞等待界面处理:等待信号与槽、等待用户操作界面、等待事件发生
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部