Qt图标
信号与槽(Signal & Slot)是Qt编程的基础。信号(Signal)就是在特定情况下被发射的事件,而槽(Slot)就是对信号响应的函数。在代码层次,信号与槽的关联是用QObject::connect()函数实现的。
Qt Creator提供了可视化界面设计的工具,其中包含了几种可视化关联信号与槽的方式。本文以图文形式对此进行了介绍。
方式一:信号与槽编辑器
利用窗口中部下方的信号与槽编辑器(Signals & Slots Editor),可以方便地对组件提供的信号与槽之间进行关联,如图1所示。具体步骤说明如下:
完成后的结果如图1下方所示(这里实现了“单击按钮关闭窗口”的功能)。
图1. 利用信号与槽编辑器的方式
方式二:窗体设计界面
在窗体设计界面上方的工具栏中,点击“Edit Signals/Slots”按钮,可以进入信号与槽设计模式。具体操作步骤如下(如图2所示):
图2. 利用窗体设计界面的方式
方式三:自定义槽函数
这种方式会对选择的信号函数,自动生成一个槽函数框架。具体操作步骤如下(见图3、图4):
图3. 选择Go to slot
图4. 槽函数框架
方式一和方式二适用于组件已经提供或定义的信号与槽之间的关联。关联添加后,在ui_widget.h文件的setupUi函数中,将会出现如下关联代码,
QObject::connect(pushButton, SIGNAL(clicked()), widget, SLOT(close()));
方式三适用于为组件自定义槽函数响应功能。该槽函数是通过setupUi函数中的如下代码自动与相应信号关联的,
QMetaObject::connectSlotsByName(Widget);
看了本文,你对信号与槽的三种可视化关联方式都了解了吗?欢迎大家多多关注评论转发[赞]!
| 留言与评论(共有 0 条评论) “” |