信号与槽是Qt中的核心,也是Qt的特有的。在Qt中信号与槽的关键字为slots、signals、emit。 创建一个Qt Widget项目,双击Forms下的mainwindow.ui,在弹出的UI 设计面板小部件选择区域,拖拽Push Button 至窗体设计面板中: 综上所述,我们可以得知槽是一个函数,当一个信号发射时,将会执行绑定的槽。 我们可以在该槽函数中编写某些代码检测是否在 PushButton被点击时,该函数将会响应。 我们尝试使用一个弹窗作为槽函数的一个表现。可以在 mainwindow.cpp 文件的头部,引入弹窗的头文件: 在槽函数中添加 QMessageBox 弹窗(QMessageBox为弹窗),QMessageBox 的函数原型如下: 有了以上说明,我们可以在槽函数中添加如下代码(直接填入值不需要在参数里面进行赋值): 以上代码服部件为NULL,标题值为“这是标题”,内容为“@_bit”,弹窗有2个按钮,一个是Yes一个是No,默认选中Yes。 点击运行查看效果:
具体信号与槽将会在下一节中详细说明,因为担心一些读者在没了解过槽与信号前直接讲述过深导致门槛提高,阅读困难,所以当前这一篇文将在不理解信号与槽的实现原理下,完成点击按钮并弹窗,感受信号与槽的使用。
拖拽完成后的界面如下:
右键 PushButton 选择转到槽:
之后弹出转到槽面板,选择QAstractButton下的clicked():
这时将会跳转至一个方法中:
以上操作使按钮绑定了一个方法,这个方法可以称作为槽,槽则是对信号响应的函数。槽可以使该函数与一个信号关联,信号发射时,槽函数会响应,执行槽函数。
刚刚我们在槽面板下选择的是QAstractButton下的clicked(),那么clicked则是发送的信号。clicked是当该按钮被点击后发送的信号。#include <QMessageBox>
static StandardButton QMessageBox::information ( QWidget * parent, const QString & title, const QString & text, StandardButtons buttons = Ok, StandardButton defaultButton = NoButton );
QMessageBox::Yes | QMessageBox::No
类型为 StandardButtonQMessageBox::information(NULL, "这是标题", "@1_bit", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
可能读者在设置显示值时会出现编码问题,导致显示某些值错误,在后面的章节将会说明。
完整代码截图如下,紫色框选区域为我添加的代码:
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算