转载:pyqt的signal和solit
转自:http://blog.csdn.net/hlqyq/article/details/6713828
import sys
from PyQt5.QtCore import pyqtSignal, pyqtSlot, Qt
from PyQt5.QtWidgets import QWidget, QApplication class MyWidget(QWidget):
Signal_NoParameters = pyqtSignal()
Signal_OneParameter = pyqtSignal(int)
Signal_OneParameter_Overload =pyqtSignal([int],[str])
Signal_TwoParameters = pyqtSignal(int,str)
Signal_TwoParameters_Overload =pyqtSignal([int,int],[int,str]) def mousePressEvent(self, event):
self.Signal_NoParameters.emit()
self.Signal_OneParameter.emit(1)
self.Signal_OneParameter_Overload.emit(1)
self.Signal_OneParameter_Overload[str].emit("abc")
self.Signal_TwoParameters.emit(1,"abc")
self.Signal_TwoParameters_Overload.emit(1,2)
self.Signal_TwoParameters_Overload[int, str].emit(1,"abc") @pyqtSlot()
def setValue_NoParameters(self):
print('''无参数槽方法''')
pass
@pyqtSlot(int)
def setValue_OneParameter(self,nIndex):
print( '''一个参数(整数)槽方法''', nIndex)
pass
@pyqtSlot(str)
def setValue_OneParameter_String(self,szIndex):
print( '''一个参数(字符串)的槽方法''', szIndex)
pass
##@pyqtSlot(int,int)
def setValue_TwoParameters(self,x,y):
print( '二个参数(整数,整数)槽方法', x, y)
pass
## @pyqtSlot(int,str) 加不加槽修饰没看出来啥区别。。。
def setValue_TwoParameters_String(self,x,yx):
print('二个参数(整数,字符串)槽方法', x, yx)
pass app = QApplication(sys.argv)
widget = MyWidget()
widget.show()
widget.Signal_NoParameters.connect(widget.setValue_NoParameters,Qt.QueuedConnection)
widget.Signal_OneParameter.connect(widget.setValue_OneParameter,Qt.QueuedConnection)
widget.Signal_OneParameter_Overload[int].connect(widget.setValue_OneParameter,Qt.QueuedConnection)
widget.Signal_OneParameter_Overload[str].connect(widget.setValue_OneParameter_String,Qt.QueuedConnection)
widget.Signal_TwoParameters.connect(widget.setValue_TwoParameters,Qt.QueuedConnection)
widget.Signal_TwoParameters_Overload[int,int].connect(widget.setValue_TwoParameters,Qt.QueuedConnection)
widget.Signal_TwoParameters_Overload[int,str].connect(widget.setValue_TwoParameters_String,Qt.QueuedConnection) sys.exit(app.exec_())
signal即可以和solit连接,也可以和signal连接。
转载:pyqt的signal和solit的更多相关文章
- PyQt的signal 和 solit的补充
from PyQt5.QtWidgets import (QWidget , QVBoxLayout , QHBoxLayout, QLineEdit, QPushButton) from PyQt5 ...
- 转载:pyqt线程间通过 信号/槽 通信
转自:http://blog.sina.com.cn/s/blog_613d5bb701016qzv.html 信号(singal)与槽(slot)用于对象相互通信,信号:当某个对象的某个事件发生时, ...
- 调试没有core文件的coredump
对coredump的分析中,是依赖于core文件的,而core文件中也几乎包含了程序当前的所有状态(堆栈.内存.寄存器等).然而在实际的线上环境中,由于core文件太大.保存core文件耗时太久,出于 ...
- [转载]使用PyQt来编写第一个Python GUI程序
转载自:http://python.jobbole.com/81276/ 英文版出处:http://pythonforengineers.com/your-first-gui-app-with-pyt ...
- 【转载】 Pyqt QStackedWidget堆栈窗体
转载地址: http://blog.csdn.net/a649518776/article/details/6636578 下面用代码实现上面窗口的设计 # -*- coding: utf-8 -*- ...
- 【转载】Pyqt QSplitter分割窗口
转载来自: http://blog.sina.com.cn/s/blog_4b5039210100h3ih.html 分割窗口在应用程序中经常用到,它可以灵活分布窗口布局,经常用于类似文件资源管理器的 ...
- 【转载】Pyqt 添加右键菜单方法
转载地址: http://www.cnblogs.com/yogalau/p/3954042.html?utm_source=tuicool QListWidget 是继承 QWidget 的, 所以 ...
- 【转载】pyqt QTableWidget的使用
转载地址: http://blog.sina.com.cn/s/blog_9b78c91101019sgi.html QTableWidget是QT程序中常用的显示数据表格的空间,很类似于VC.C#中 ...
- 非常好的一篇对linux信号(signal)的解析 (转载)【转】
转自:https://blog.csdn.net/return_cc/article/details/78845346 Linux信号(signal) 机制分析 转载至:https://www.cnb ...
随机推荐
- Selenium中定位元素的方法
find_element_by_id()find_element_by_name()find_element_by_class_name()find_element_by_tag_name()find ...
- jQuery中的text(),html(),val()用法
jQuery中的text(),html(),val()用法 text():获取或者改变指定元素的文本 html():获取或改变指定元素的html元素以及文本 val():获取或者改变指定元素的valu ...
- CentOS 6.5下二进制安装 MySQL 5.6
CentOS 6.5 二进制安装MySQL 5.6 1:查看系统版本 [root@10-4-5-9 mysql]# cat /etc/redhat-release CentOS release 6.5 ...
- iOS 全屏侧滑/UIScrollView/UISlider间滑动冲突
代码地址如下:http://www.demodashi.com/demo/13848.html 效果预览 一.前期准备 有一个支持全屏侧滑返回的视图控制器ViewController,ViewCont ...
- Maven构建项目时index.jsp文件报错
错误为:The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path 原 ...
- MySQL-安全对调两个表名
我们想要的是同时完成表名对调,如果是先后的对掉,用RENAME的话可能会导致有些数据写入失败,那怎么办? 其实也不难,从MySQL手册里就能找到方法,那就是:同时锁定2个表,不允许写入,然后对调表名. ...
- 总结一些js自定义的函数
1.dayin() 作用:将id为dayin的内容,新建页面并打印,可解决打印某页面中的部分内容的问题. 使用方法:将要打印的内容通过 <span id="dayin"> ...
- C#:Application操作(待补充)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- blender, 旋转和平移视图
旋转视图:MMB(鼠标中键) 平移视图:shift+MMB
- 【打CF,学算法——二星级】Codeforces Round #313 (Div. 2) B. Gerald is into Art(水题)
[CF简单介绍] 提交链接:http://codeforces.com/contest/560/problem/B 题面: B. Gerald is into Art time limit per t ...