继承自QtCore.QObject的对象均可以发射信号。如果我们单击一个按钮,那么一个clicked()信号就会被触发。下面的示例演示如何手动发射一个信号。

#!/usr/bin/python
# -*- coding: utf-8 -*- import sys
from PyQt4 import QtGui, QtCore class Emit(QtGui.QWidget):
def __init__(self, parent = None):
QtGui.QWidget.__init__(self)
self.setWindowTitle('emit')
self.resize(250, 150)
self.connect(self, QtCore.SIGNAL('closeEmitApp()'),
QtCore.SLOT('close()'))
def mousePressEvent(self, event):
self.emit(QtCore.SIGNAL('closeEmitApp()')) app = QtGui.QApplication(sys.argv)
emit = Emit()
emit.show()
sys.exit(app.exec_())

在以上的示例中,我们创建了一个新的信号closeEmitApp(),该信号在按下鼠标事件发生时被发射。

self.emit(QtCore.SIGNAL('closeEmitApp()'))

使用PyQt内建的emit函数发射信号closeEmitApp()。

self.connect(self, QtCore.SIGNAL('closeEmitApp()'),
                            QtCore.SLOT('close()'))

使用connect函数将手动创建的closeEmitApp()信号和程序的close()函数连接起来,这样在用户按下鼠标的任意键时,程序就会结束。

最新文章

  1. Oracle查看表结构的几种方法
  2. 让你的linux操作系统更加安全【转】
  3. Jsonp 跨域请求实例
  4. socket(tcp)互发信息
  5. HDOJ(HDU) 2186 悼念512汶川大地震遇难同胞——一定要记住我爱你
  6. IK分词器 IKAnalyzer 简单demo
  7. 【Python之路】第七篇--Python基础之面向对象及相关
  8. Java设置Excel有效性
  9. Building Apps for Windows 10 on LattePanda–Jump Start
  10. c#通用配置文件读写类(xml,ini,json)
  11. 【css】盒子模型 之 弹性盒模型
  12. robotframework自动化系列:删除操作流程以及总结
  13. java编程(2)——servlet和Ajax异步请求的接口编程(有调用数据库的数据)
  14. 《深入理解java虚拟机》读书笔记——垃圾收集与内存分配策略
  15. Eclipse 00: 常用快捷键
  16. js没有函数重载
  17. Linux内核分析期中总结
  18. 关于js中this指向的理解总结!
  19. 关于select的默认样式问题
  20. 函数使用二:采购申请BAPI_PR_CREATE

热门文章

  1. 一款纯css3实现的响应式导航
  2. linux查找系统中占用磁盘空间最大的文件
  3. Sencha Touch2 工作笔记
  4. Zookeeper客户端使用
  5. WPF教程二:布局之StackPanel面板
  6. PHP 获取图片中的器材信息
  7. 论SparkStreaming的数据可靠性和一致性
  8. NGUI使用教程 安装NGUI插件
  9. 在CentOS上以源码编译的方式安装Greenplum数据库
  10. 编写一个Filter,除继承HttpServlet类外还需要( )。