# 过滤鼠标滚轮事件

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 过滤事件的更多相关文章

  1. TADOTable 用过滤事件 后 记录数据和 记录的内容

    用 过滤事件,过滤后 ADOTbTrade.RecordCount 是总数, 但是,记录内容是 过滤后的 ADOTbTrade.First; while not ADOTbTrade.Eof do b ...

  2. pyqt信号事件相关网址说明及python相关

    pyqt在线文档: http://www.rzcucc.com/search/pyqt.sourceforge.net/Docs/PyQt4/-qdatetime-2.html PyQT信号槽_学习笔 ...

  3. PyQt 5事件和信号

    信号槽Signals & slots sld.valueChanged.connect(lcd.display) # 将滚动条的valueChanged信号连接到lcd的display插槽 # ...

  4. EasyUI datagrid 过滤事件段

    //dateTimeRange过滤扩展 $.extend($.fn.datagrid.defaults.filters, { dateRange: { /*onInit: function(targe ...

  5. (十三)事件分发器——event()函数,事件过滤

    事件分发器——event()函数 事件过滤 事件进入窗口之前被拦截 eventFilter #include "mywidget.h" #include "ui_mywi ...

  6. [AlwaysOn Availability Groups]AG扩展事件

    AG扩展事件 SQL Server 2012定义了一些关于AlwaysOn的扩展事件.你可以监控这些扩展事件来帮助诊断AG的根本问题.你也可以使用以下语句查看扩展事件: SELECT * FROM s ...

  7. Qt自定义事件的实现(转)

    原文:http://blog.csdn.net/michealtx/article/details/6866094 初学Qt,用了Qt自带的事件,然后想怎么才能定义自己的事件呢?又如何使用自定义事件呢 ...

  8. SQL 扩展事件

    在本篇,我通过使用新建“Session ”对话框来创建新的扩展事件会话.定义一个自己的扩展事件,动作和谓词,并且发布一个以收集事件数据为目的的会话. 首先从UI开始 在SQLServer2008R2以 ...

  9. SQL Server 扩展事件(Extented Events)从入门到进阶(1)——从SQL Trace到Extented Events

    由于工作需要,决定深入研究SQL Server的扩展事件(Extended Events/xEvents),经过资料搜索,发现国外大牛的系列文章,作为“学习”阶段,我先翻译这系列文章,后续在工作中的心 ...

随机推荐

  1. Maven的Missing artifact问题解决

     Maven的Missing artifact问题解决   今天在创建一个新的Maven项目时,在其中添加了很多依赖.刚开始为了避免错误就每添加一次,保存一下,Eclipse就会下载相应的包.最后为了 ...

  2. [原创]zepto打造一款移动端划屏插件

    最近忙着将项目内的jquery 2换成zepto 因为不想引用过多的zepto包,所以花了点时间 zepto真的精简了许多,源代码看着真舒服 正好项目内需要一个划屏插件,就用zepto写了一个 逻辑其 ...

  3. virtualenv基本操作(windows环境)

    1 下载virtualenv pip install virtualenv 2 创建一个virtualenv工作目录 mkdir myproject_env 3 穿件一个python项目 virtua ...

  4. EndNote(三)之中文引文导入方式

    上一篇文章讲了Web of Science,PubMed的引文如何导入到EndNote中.这次,写一下常用的中文文献查找网站的引文如何导入EndNote. 本人常用的中文文献查找网站,主要是知网(CN ...

  5. 【转】使用Python matplotlib绘制股票走势图

    转载出处 一.前言 matplotlib[1]是著名的python绘图库,它提供了一整套绘图API,十分适合交互式绘图.本人在工作过程中涉及到股票数据的处理如绘制K线等,因此将matplotlib的使 ...

  6. 在linux下使用curl访问 多参数url GET参数问题

    一.在Crontab中使用PHP执行脚本 就像在Crontab中调用普通的shell脚本一样(具体Crontab用法),使用PHP程序来调用PHP脚本.每一小时执行myscript.php如下: # ...

  7. C# 连接DB2字符串 Oracle免安装客户端连接字符串

    以下是DB2连接数据库 1)使用IBM.Data.DB2链接DB2数据库 2)必须安装DB2客户端,IBM.Data.DB2在安装的BIN里可以找到 3)注意一下DB2客户端版本问题,我的就是WIN7 ...

  8. ThinkPHP学习总结

    ThinkPHP学习总结 网站开发使用的thinkPHP5.0在此总结备查 MVC关系功能图 一.Thinkphp开发规范 l 类 类库.函数文件统一以.php为后缀: 类的文件名均以命名空间定义,并 ...

  9. ABAP 常见查询问题解决方法

    在ABAP 编程的时候会遇到查询单条语句的时候数能取对  但是条目数多了的话 会出现数不准确的问题   原因可能出现在查询使用了二分法查询方式  二分法查询下必须按排序的字段排序  还得按照排序的字段 ...

  10. MSDTC事务配置

    最近再用SSIS做数据归档,里面用到了分布式事务.在开发阶段是在一台计算机上运行只要是启动分布式服务就没什么问题,可是昨天把它部署到uat的时候遇到问题,错误信息是: 最后找到解决方案: 确认&quo ...