QT学习记录002——VS2019创建QT项目“Hello World“

(作为一个QT and C++菜鸟,我实在不想承认我写个 “Hello World” 写了大半天,但事实就是如此,反反复复写了七八遍我才敢确定我会写”Hello World“了)
(好歹挣扎了大半天天,这里就做个记录叭!!)

一、创建QT项目

如图,这里选择 “QT Widgets Application” (PS:要求不高的话,入门级的我是把 ”QT Widgets Application“ 和 ”QT GUI Application“ 当成一个东西的)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
之后就一直 " NEXT " 直到 “finish” 为止。
然后,点击”运行“,如果能看到下面这个界面,则表示创建成功。

在这里插入图片描述

二、编写”Hello world“

双击 “XXXXX.h” 打开QT 设计器
在这里插入图片描述
在这里插入图片描述
保存之后回到VS界面,点击“XXXXX.h”, 在“XXXXX.h”里声明“槽函数”(后面就是在这个函数里写 “Hello World”)
(注意:声明的时候是 “private slots:” ,不是单纯的 “pricvate:" ,我一开始就是这里没注意,导致后面按钮怎么都没反应)

private slots:
    void button1_clicked();

在这里插入图片描述
点击 ”XXXXXX.cpp" (注意,不是"main.cpp"),关联信号和槽,并且编写槽函数
在这里插入图片描述

connect(ui.pushButton, SIGNAL(clicked()), this, SLOT(button1_clicked()));
//sender: ui.pushButton,发送信号者,后面的"pushButton"是QT设计器中按钮的“objectName”
//signal: SIGNAL(clicked()),信号,括号里面clicked()是QT自带的信号,如果没有自定义信号的话,这里一定不能拼错。
//receiver: this ,一般接收信号这里都写 this (不排除别的情况)
//SLOT: SLOT(button1_clicked()),槽函数,这里表示点击按钮之后执行的动作,比如我这里的显示 “Hello world”

QT自带的信号查看:
在这里插入图片描述
(PS:上面的步骤之后,如果想回到可以拖拉控件的状态,只需要点击上面第一步的按钮 左边的按钮即可)在这里插入图片描述
三:运行效果
在这里插入图片描述

四:总结一下我掉坑的地方

1. 信号函数不规范

connect(ui.pushButton, SIGNAL(clicked()), this, SLOT(button1_clicked()));

我一开始没注意,“SIGNAL(clicked())” 写成 “SIGNAL(click())” ,运行时点击按钮一直没反应,这里如果没有自定义信号,就必须写QT自带的信号,不能拼错。
另外,关于connect()里面sender、signal、receiver、slot 的解释,详见:
Qt 定义信号 signals 和 槽 slots

2. 双击 “XXXXXX.ui”打不开QT设计器,或者报错闪退
解决方法详见链接 :Qt VS中双击ui文件无法打开的问题

3. 槽的申明
槽的申明一定要规范:注意是 “private slots:” ,不是的 “pricvate:" ,关键字“slots”一定不能少!!!

  • 13
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值