当前位置:七道奇文章资讯编程技术VC/C++编程
日期:2011-03-22 13:54:00  来源:本站整理

<b>Qt学习之路(9):深化理解信号槽</b>[VC/C++编程]

赞助商链接



  本文“<b>Qt学习之路(9):深化理解信号槽</b>[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

槽函数和普通的C++成员函数没有很大的辨别.它们也可以使virtual的;可以被重写;可以使public、protected大概 private的;可以由别的的C++函数调用;参数可以是任何范例的.假如要说辨别,那就是,槽函数可以和一个信号相衔接,当这个信号发生时,它可以被自动调用.

connect()语句的原型近似于:

connect(sender, SIGNAL(signal), receiver, SLOT(slot));

这里,sender和receiver都是QObject范例的,singal和slot都是没有参数名称的函数签名.SINGAL()和SLOT()宏用于把参数转换成字符串.

深化的说,信号槽还有更多大概的用法,以下所示.

一个信号可以和多个槽相连:

connect(slider, SIGNAL(valueChanged(int)),
spinBox, SLOT(setValue(int)));
connect(slider, SIGNAL(valueChanged(int)),
this, SLOT(updateStatusBarIndicator(int)));

注意,假如是这种情形,这些槽会一个接一个的被调用,但是它们的调用次序是不肯定的.

多个信号可以衔接到一个槽:

connect(lcd, SIGNAL(overflow()),
this, SLOT(handleMathError()));
connect(calculator, SIGNAL(divisionByZero()),
this, SLOT(handleMathError()));

这是说,只要肆意一个信号发出,这个槽就会被调用.

一个信号可以衔接到别的的一个信号:

connect(lineEdit, SIGNAL(textChanged(const QString &)),
this, SIGNAL(updateRecord(const QString &)));

这是说,当第一个信号发出时,第二个信号被发出.除此之外,这种信号-信号的情势和信号-槽的情势没有什么辨别.

槽可以被撤消链接:

disconnect(lcd, SIGNAL(overflow()),
this, SLOT(handleMathError()));

这种情形并不常常呈现,因为当一个对象delete之后,Qt自动撤消全部衔接到这个对象上面的槽.

为了精确的衔接信号槽,信号和槽的参数个数、范例以及呈现的次序都必须相同,比方:

connect(ftp, SIGNAL(rawCommandReply(int, const QString &)),
this, SLOT(processReply(int, const QString &)));

这里有一种例外情形,假如信号的参数多于槽的参数,那么这个参数之后的那些参数城市被忽视掉,比方:

connect(ftp, SIGNAL(rawCommandReply(int, const QString &)),
this, SLOT(checkErrorCode(int)));

这里,const QString &这个参数就会被槽忽视掉.


  以上是“<b>Qt学习之路(9):深化理解信号槽</b>[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • <b>hosts是什么 hosts文件在什么位置 若何改正hosts</b>
  • <b>在 Windows 8 中手动安装语言包</b>
  • <b>五个常见 PHP数据库问题</b>
  • Windows中Alt键的12个高效快速的利用本领介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • <b>详解MySQL存储历程参数有三种范例(in、out、inout)</b>
  • <b>Win8系统恢复出来经典的开始菜单的办法</b>
  • <b>Win8系统花屏怎么办 Win8系统花屏的办理办法</b>
  • <b>Windows 7系统下无线网卡安装</b>
  • <b>为什么 Linux不需求碎片整理</b>
  • <b>Windows 8中删除账户的几种办法(图)</b>
  • <b>教你如安在win7下配置路由器</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .