程序入口文件
#include <QtWidgets/QApplication>
// 包含登录页面头文件
#include "DlgLogin.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
// 程序入口
// 调页面起来
//DlgMain w;
//w.show();
// 换成登录页面
DlgLogin w;
w.show();
return a.exec();
}
新建方式
新建登录页面
登录页面
DlgLogin.cpp
#include "DlgLogin.h"
#include "ui_DlgLogin.h"
#include "QtMainPage.h"
//调试输出
#include <QDebug>
//防止中文乱码
#pragma execution_character_set("utf-8")
//构造函数
DlgLogin::DlgLogin(QWidget *parent)
: QDialog(parent)
{
//初始化对话框的界面元素
ui.setupUi(this);
//调用点击方法
connect(ui.loginPushButton, &QPushButton::clicked, this, &DlgLogin::loginPushButton_clicked);
}
//析构函数,退出清理资源使用
DlgLogin::~DlgLogin()
{}
//点击事件
void DlgLogin::loginPushButton_clicked() {
//获取输入框内容
QString username = ui.userNamLineEdit->text();
QString passWord = ui.passWordLineEdit->text();
if (username == "1" && passWord == "1") {
qDebug() << "登录成功";
//改变ui
ui.messageLabel->setText("登录成功");
}
else {
qDebug() << "请检查密码是否正确";
ui.messageLabel->setText("登录失败");
}
}
DlgLogin.h
#pragma once //预处理指令,用于防止头文件被多次包含
//创建对话框窗口
#include <QDialog>
#include "ui_DlgLogin.h"
class DlgLogin : public QDialog
{
//Qt宏,用于在类中启用Qt的信号和槽机制
Q_OBJECT
public:
//构造函数
DlgLogin(QWidget *parent = nullptr);
//析构函数。
//当DlgLogin对象不再需要时,析构函数会被调用,以执行任何必要的清理操作
~DlgLogin();
//响应登录按钮点击事件的槽函数
void loginPushButton_clicked();
//存储和管理对话框窗口的界面元素
private:
Ui::DlgLoginClass ui;
};
ui
经典报错
看到.h
文件 里面有这个Q_OBJECT
宏定义,头文件就必须选中 moc