网络安全参考 | UNIX参考 | GPS参考 | 无线参考 | 在线手册 | OSBUG.ORG | SUNNY-NETWORK.COM
天线制作 GPS 地标
网站地图 RSS订阅
高级搜索 收藏本站
Home | 业界动态 | Open source | GNU | Linux | BSD | Solaris | AIX | HP-UX | IRIX | Mac OS X | Minix | Tru64 | SCO UNIX | Network | Security | X-Window | Database | 应用服务 | Programming | 经典著作 | 永远的纪念 | 杂项
 当前位置: Home > Programming > QT > 文章  
QT的信号与槽机制介绍
文章来源: IBM Developerworks 文章作者: 唐新华 发布时间: 2001-06-01   字体: [ ]  
 

  槽的声明与普通函数的声明一样,可以携带零或多个形式参数。既然信号的声明类似于普通C++函数的声明,那么,信号也可采用C++中虚函数的形式进行声明,即同名但参数不同。例如,第一次定义的void mySignal()没有带参数,而第二次定义的却带有参数,从这里我们可以看到QT的信号机制是非常灵活的。

  信号与槽之间的联系必须事先用connect函数进行指定。如果要断开二者之间的联系,可以使用函数disconnect。

//tsignal.h
 
...
 
class TsignalApp:public QMainWindow
{
  Q_OBJECT
    ...
    //信号声明区
  signals:
    //声明信号mySignal()
    void mySignal();
    //声明信号mySignal(int)
    void mySignal(int x);
    //声明信号mySignalParam(int,int)
    void mySignalParam(int x,int y);
    //槽声明区
  public slots:
    //声明槽函数mySlot()
    void mySlot();
    //声明槽函数mySlot(int)
    void mySlot(int x);
    //声明槽函数mySignalParam (int,int)
    void mySignalParam(int x,int y);
}
 
...
 
//tsignal.cpp
 
...
 
TsignalApp::TsignalApp()
{
  ...
  //将信号mySignal()与槽mySlot()相关联
  connect(this,SIGNAL(mySignal()),SLOT(mySlot()));
  //将信号mySignal(int)与槽mySlot(int)相关联
  connect(this,SIGNAL(mySignal(int)),SLOT(mySlot(int)));
  //将信号mySignalParam(int,int)与槽mySlotParam(int,int)相关联
  connect(this,SIGNAL(mySignalParam(int,int)),SLOT(mySlotParam(int,int)));
}
 
推荐文章
·Qt 的内部进程通信机制
·Qt中的多线程编程
 
 
↑返回顶部   打印本页   关闭窗口↓  

Google
 
Web oldhand.org unixreference.net meshmea.org
相关分类
热点文章
·Qt中的多线程编程
·Qt 的内部进程通信机制
相关文章
·Qt 的内部进程通信机制
·Qt中的多线程编程
·GCC创建共享库
·致初学者:PHP比ASP优秀
·Linux如何处理当前运行
·Linux操作系统套接字编
·幕启:介绍 Z shell
·巧用AWK处理二进制数据
更多...
 
 

Copyright(c) 2001-2009 OLDHAND ORGANIZATION, All Rights reserved.
Power by DedeCms 织梦内容管理系统