QT基础入门:创建并运行第一个项目
创作时间:
作者:
@小白创作中心
QT基础入门:创建并运行第一个项目
引用
CSDN
1.
https://m.blog.csdn.net/m0_75107602/article/details/145635894
本文将带你完成一个简单的QT项目开发,包括创建项目、编辑图形界面、实现基本交互功能以及理解关键源代码。
一、新建项目
- 打开QT Creator,点击菜单栏中的"文件",然后选择"新建文件或项目"。
- 在弹出的对话框中,选择"Application" -> "Qt Widgets Application",然后点击"Choose"。
- 输入项目名称,例如"1-demo",保持其他设置默认。
- 在工具链选择中,建议初学者选择MinGW作为编译器。
- 点击"Finish"完成项目创建。
二、编辑图形窗口
- 在项目资源管理器中,双击打开"Forms"目录下的.ui文件,进入设计模式。
- 在左侧的控件面板中,依次搜索并添加以下控件:
- Label(标签)
- Line Edit(编辑框)
- Push Button(按钮)
- 选中每个控件,可以在右下角的属性面板中修改其名称(Name)属性。
三、运行项目
- 右键点击按钮控件,选择"转到槽"。
- 在弹出的对话框中选择"clicked()"信号,这表示当按钮被点击时触发的函数。
- 在生成的槽函数中添加以下代码:
void MainWindow::on_submitButton_clicked()
{
// 获取用户输入的用户名
QString str = "亲爱的" + ui->userNameEdit->text() + ", 欢迎来到召唤师峡谷";
// 弹出信息提示框显示欢迎信息
QMessageBox::information(this, "Welcome", str, QMessageBox::Ok);
}
- 运行项目,点击按钮查看效果。
四、理解源代码
main.cpp
#include "mainwindow.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
1-demo.pro
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
CONFIG += c++11
DEFINES += QT_DEPRECATED_WARNINGS
SOURCES += \
main.cpp \
mainwindow.cpp
HEADERS += \
mainwindow.h
FORMS += \
mainwindow.ui
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target
mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
private slots:
void on_submitButton_clicked();
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QMessageBox>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_submitButton_clicked()
{
QString str = "亲爱的" + ui->userNameEdit->text() + ", 欢迎来到召唤师峡谷";
QMessageBox::information(this, "Welcome", str, QMessageBox::Ok);
}
五、QT里的UI文件是如何参与编译的?
在Qt中,.ui文件通过以下步骤参与编译:
- 设计界面:使用Qt Designer创建.ui文件(XML格式),描述界面布局和控件。
- 转换为C++代码:构建系统(如qmake或CMake)调用uic工具,将.ui文件转换为C++头文件(如ui_mainwindow.h)。
- 绑定界面与逻辑:生成的头文件被包含到主程序中,通过setupUi函数将界面与窗口关联。
- 编译与运行:生成的代码与其他源文件一起编译,最终生成可执行文件。
程序员只需修改.ui文件,构建系统会自动处理其余步骤。
热门推荐
揭秘:握力如何揭示您的健康,又怎提升
大湾区酒价2024年度涨跌榜出炉:破价、内卷、电商挤压成全年关键词
水溶性壳聚糖:结构、性质与应用
为什么苹果iPhone没有高功率快充?四大原因解析
《沈园二首·其一》该如何理解?创作背景是什么?
《沈园二首·其一》该如何理解?创作背景是什么?
鸡心果:树壮叶厚 抗寒耐旱 色艳全红 口感甜脆
大厂内部的压测方案设计,干货分享
股票市场领先指标的定义是什么?它对市场分析有何参考价值?
大盘中的领先指标是什么?这些指标如何反映市场趋势?
世界咖啡豆产区风味特色解析
戴n95口罩可以避免吸入二手烟吗
劳务派遣与直接用工的优劣分析
如何判断 USB 集线器的数据传输速率
蓝莓怎么育苗 蓝莓育苗全攻略
红豆就是赤小豆?别再搞错了!教你如何区分红豆和赤小豆
红豆就是赤小豆?别再搞错了!教你如何区分红豆和赤小豆
肠胃消化不良患者的早餐食谱建议
怎么申请城乡基本医疗保险制度的报销?
再进4位!南昌跻身中国百强城市前30名
第二次世界大战的历史影响及重要性
带越字的公司名字三字大全 有典故的词语三字公司名
越的意思~(理解“越”字的含义)
好书推荐:16本幼儿园校长推荐的绘本,打开幼儿阅读之门
劳动监察大队处理投诉需要多长时间?
什么是压敏胶带,一文带你认识压敏胶带是干嘛用的,有什么作用与使用方法
什么是压敏胶?一文带你了解压敏胶的工作原理、特性及分类
如何预测国债收益率的走势?怎样分析国债收益率的趋势?
“地域黑”是如何成功扩散的?
节约20%以上的整机功耗!分组动态调频精细控制CPU性能