pyqt 过滤事件
# 过滤鼠标滚轮事件
class stepItem(QWidget):
def __init__(self, parent=None):
QWidget.__init__(self, parent)
self.init_ui()
self.init_ui_data() def init_ui(self):
self.setObjectName('scriptManager')
self.ui = stepItem_ui.Ui_stepItem()
self.ui.setupUi(self)
self.ui.comboBox_type.setStyleSheet("QComboBox QAbstractItemView::item{height:25px;}")
self.ui.comboBox_type.setView(QListView())
self.ui.comboBox_relyon.clear() self.ui.textEdit_step_result.clear()
self.ui.textEdit_step_result.adjustSize() self.connect(self.ui.comboBox_type, SIGNAL('currentIndexChanged(int)'), self.currentIndexChanged) # 过滤鼠标滚轮事件
self.ui.comboBox_type.installEventFilter(self)
self.ui.comboBox_relyon.installEventFilter(self) def eventFilter(self, source, event):
if source == self.ui.comboBox_type:
if event.type() == QEvent.Wheel:
return True
if source == self.ui.comboBox_relyon:
if event.type() == QEvent.Wheel:
return True return QWidget.eventFilter(self, source, event) def init_ui_data(self):
self.get_res(gl.gl_data["SET_STEP_RES"], None) def get_res(self, data, param):
'''
获取步骤资源
:param data:
:return:
''' if data.has_key("DATA"):
self.ui.comboBox_type.clear()
self.ui.comboBox_type.addItem('', 0)
list_res = data["DATA"]
for res in list_res:
self.ui.comboBox_type.addItem(res['S_STEP_TYPE_NAME'], res['I_STEP_TYPE_ID'])
# self.ui.comboBox_type.setItemData(res['I_STEP_TYPE_ID'], res['I_STEP_TYPE_ID'])
# self.ui.comboBox_type.setCurrentIndex(0) def setStepData(self, stepNum, stepType, stepValue):
# self.ui.label_step.setText(stepNum)
# self.ui.comboBox_type.setCurrentIndex(self.ui.comboBox_type.findText(stepType))
# self.ui.lineEdit.setText(stepValue)
pass def currentIndexChanged(self):
#text = self.ui.comboBox_type.currentText().toUtf8().data()
step_index = self.ui.comboBox_type.currentIndex()
# aa = self.ui.comboBox_type.itemData(id).toInt()
step_name = self.ui.comboBox_type.itemText(step_index)
step_id = self.ui.comboBox_type.itemData(step_index) self.ui.lineEdit.setReadOnly(False)
if step_id == 3 or step_id == 9 or step_id == 10 or step_id == 13:
if len(self.ui.lineEdit.text()) == 0:
self.ui.lineEdit.setText(QString(u'该选项不需要参数!'))
self.ui.lineEdit.setReadOnly(True)
else:
if self.ui.lineEdit.text() == QString(u'该选项不需要参数!'):
self.ui.lineEdit.clear()
self.ui.lineEdit.setReadOnly(False)
self.ui.lineEdit.setFocus() # print text if __name__ == '__main__':
import sys
app = QApplication(sys.argv)
myQWidget = stepItem()
myQWidget.show()
# myQWidget.test()
sys.exit(app.exec_()) 所有事件记录:
AccessibilityDescription = 130
AccessibilityHelp = 119
AccessibilityPrepare = 86
ActionAdded = 114
ActionChanged = 113
ActionRemoved = 115
ActivationChange = 99
ApplicationActivate = 121
ApplicationActivated = 121
ApplicationDeactivate = 122
ApplicationDeactivated = 122
ApplicationFontChange = 36
ApplicationLayoutDirectionChange = 37
ApplicationPaletteChange = 38
ApplicationWindowIconChange = 35
ChildAdded = 68
ChildPolished = 69
ChildRemoved = 71
Clipboard = 40
Close = 19
CloseSoftwareInputPanel = 200
ContentsRectChange = 178
ContextMenu = 82
CursorChange = 183
DeferredDelete = 52
DragEnter = 60
DragLeave = 62
DragMove = 61
Drop = 63
DynamicPropertyChange = 170
EnabledChange = 98
Enter = 10
EnterWhatsThisMode = 124
FileOpen = 116
FocusIn = 8
FocusOut = 9
FontChange = 97
Gesture = 198
GestureOverride = 202
GrabKeyboard = 188
GrabMouse = 186
GraphicsSceneContextMenu = 159
GraphicsSceneDragEnter = 164
GraphicsSceneDragLeave = 166
GraphicsSceneDragMove = 165
GraphicsSceneDrop = 167
GraphicsSceneHelp = 163
GraphicsSceneHoverEnter = 160
GraphicsSceneHoverLeave = 162
GraphicsSceneHoverMove = 161
GraphicsSceneMouseDoubleClick = 158
GraphicsSceneMouseMove = 155
GraphicsSceneMousePress = 156
GraphicsSceneMouseRelease = 157
GraphicsSceneMove = 182
GraphicsSceneResize = 181
GraphicsSceneWheel = 168
Hide = 18
HideToParent = 27
HoverEnter = 127
HoverLeave = 128
HoverMove = 129
IconDrag = 96
IconTextChange = 101
InputMethod = 83
KeyboardLayoutChange = 169
KeyPress = 6
KeyRelease = 7
LanguageChange = 89
LayoutDirectionChange = 90
LayoutRequest = 76
Leave = 11
LeaveWhatsThisMode = 125
LocaleChange = 88
MacSizeChange = 177
MaxUser = 65535
MenubarUpdated = 153
MetaCall = 43
ModifiedChange = 102
MouseButtonDblClick = 4
MouseButtonPress = 2
MouseButtonRelease = 3
MouseMove = 5
MouseTrackingChange = 109
Move = 13
NonClientAreaMouseButtonDblClick = 176
NonClientAreaMouseButtonPress = 174
NonClientAreaMouseButtonRelease = 175
NonClientAreaMouseMove = 173
None = 0
OkRequest = 94
Paint = 12
PaletteChange = 39
ParentAboutToChange = 131
ParentChange = 21
PlatformPanel = 212
Polish = 75
PolishRequest = 74
QueryWhatsThis = 123
RequestSoftwareInputPanel = 199
Resize = 14
Shortcut = 117
ShortcutOverride = 51
Show = 17
ShowToParent = 26
SockAct = 50
StateMachineSignal = 192
StateMachineWrapped = 193
StatusTip = 112
StyleChange = 100
TabletEnterProximity = 171
TabletLeaveProximity = 172
TabletMove = 87
TabletPress = 92
TabletRelease = 93
Timer = 1
ToolBarChange = 120
ToolTip = 110
ToolTipChange = 184
TouchBegin = 194
TouchEnd = 196
TouchUpdate = 195
UngrabKeyboard = 189
UngrabMouse = 187
UpdateLater = 78
UpdateRequest = 77
User = 1000
WhatsThis = 111
WhatsThisClicked = 118
Wheel = 31
WindowActivate = 24
WindowBlocked = 103
WindowDeactivate = 25
WindowIconChange = 34
WindowStateChange = 105
WindowTitleChange = 33
WindowUnblocked = 104
WinEventAct = 132
WinIdChange = 203
ZOrderChange = 126
pyqt 过滤事件的更多相关文章
- TADOTable 用过滤事件 后 记录数据和 记录的内容
用 过滤事件,过滤后 ADOTbTrade.RecordCount 是总数, 但是,记录内容是 过滤后的 ADOTbTrade.First; while not ADOTbTrade.Eof do b ...
- pyqt信号事件相关网址说明及python相关
pyqt在线文档: http://www.rzcucc.com/search/pyqt.sourceforge.net/Docs/PyQt4/-qdatetime-2.html PyQT信号槽_学习笔 ...
- PyQt 5事件和信号
信号槽Signals & slots sld.valueChanged.connect(lcd.display) # 将滚动条的valueChanged信号连接到lcd的display插槽 # ...
- EasyUI datagrid 过滤事件段
//dateTimeRange过滤扩展 $.extend($.fn.datagrid.defaults.filters, { dateRange: { /*onInit: function(targe ...
- (十三)事件分发器——event()函数,事件过滤
事件分发器——event()函数 事件过滤 事件进入窗口之前被拦截 eventFilter #include "mywidget.h" #include "ui_mywi ...
- [AlwaysOn Availability Groups]AG扩展事件
AG扩展事件 SQL Server 2012定义了一些关于AlwaysOn的扩展事件.你可以监控这些扩展事件来帮助诊断AG的根本问题.你也可以使用以下语句查看扩展事件: SELECT * FROM s ...
- Qt自定义事件的实现(转)
原文:http://blog.csdn.net/michealtx/article/details/6866094 初学Qt,用了Qt自带的事件,然后想怎么才能定义自己的事件呢?又如何使用自定义事件呢 ...
- SQL 扩展事件
在本篇,我通过使用新建“Session ”对话框来创建新的扩展事件会话.定义一个自己的扩展事件,动作和谓词,并且发布一个以收集事件数据为目的的会话. 首先从UI开始 在SQLServer2008R2以 ...
- SQL Server 扩展事件(Extented Events)从入门到进阶(1)——从SQL Trace到Extented Events
由于工作需要,决定深入研究SQL Server的扩展事件(Extended Events/xEvents),经过资料搜索,发现国外大牛的系列文章,作为“学习”阶段,我先翻译这系列文章,后续在工作中的心 ...
随机推荐
- (转)System.Drawing.Color的颜色对照表
经常使用System.Drawing.Color, 本篇介绍一下颜色与名称及RGB值的对应关系. 1. 颜色与名称的对照表(点击下图放大看): 2. 颜色与RGB值对照表: Color.AliceBl ...
- SQL分组多列统计(GROUP BY后按条件分列统计)
as tjsl from fyxx group by zt,whbmbh end) as ybhsl from fyxx group by whbmbh 下面是摘自别人的博客 最近遇到一个问题,需要对 ...
- 【sdoi2013】森林 BZOJ 3123
Input 第一行包含一个正整数testcase,表示当前测试数据的测试点编号.保证1≤testcase≤20. 第二行包含三个整数N,M,T,分别表示节点数.初始边数.操作数.第三行包含N个非负整数 ...
- 得到 window.open 新页面中的数据
1.htm 页面 单击按 '钮后' 调用window.open方法,开启新窗口 2.htm 想实现---------------------- 在2.htm页面单击按钮 将相应的数据返回到 1. ...
- ServiceStack.Redis订阅发布服务的调用(Z)
1.Redis订阅发布介绍Redis订阅发布是一种消息通信模式:发布者(publisher)发送消息,订阅者(Subscriber)接受消息.类似于设计模式中的观察者模式.发布者和订阅者之间使用频 ...
- ABAP 将单元格设置编辑状态 FORM
FORM set_style USING fieldname style TYPE string CHANGING ...
- SQL中NULL值
SQL的表达式,除了IS NULL和NOT NULL以外,只要出现NULL值结果都为FALSE 简单的例子: SELECT * FROM table WHERE name!='abc' 只要name值 ...
- 在eclipse创建android project,最后一步点击finish没反应
在创建android project的时候,到最后一步点击finish没有反应. 本来以为可能是SDK中的Extra下Android Support Library没有安装,后来检查发现Minimum ...
- String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";作用!!!!!
<%String path = request.getContextPath();String basePath = request.getScheme()+"://"+re ...
- 【Juicer】 一个高效、轻量的前端 (Javascript) 模板引擎
引用地址:http://juicer.name/docs/docs_zh_cn.html * 一个完整的例子 HTML 代码: <script id="tpl" type=& ...