gpt4 book ai didi

python - 模拟鼠标释放 Pyqt

转载 作者:太空狗 更新时间:2023-10-30 00:03:24 25 4
gpt4 key购买 nike

如何使用 Qt.SIGNAL 模拟鼠标释放 Action ?我需要在没有用户交互的情况下模拟 mouseRelease。提前致谢!

最佳答案

这是一个使用 clicked 的例子QPushButton 的信号:

#!/usr/bin/env python
#-*- coding:utf-8 -*-

from PyQt4 import QtGui, QtCore

class MyWindow(QtGui.QWidget):
def __init__(self, parent=None):
super(MyWindow, self).__init__(parent)

self.pushButtonSimulate = QtGui.QPushButton(self)
self.pushButtonSimulate.setText("Simulate Mouse Release!")
self.pushButtonSimulate.clicked.connect(self.on_pushButtonSimulate_clicked)

self.layoutHorizontal = QtGui.QHBoxLayout(self)
self.layoutHorizontal.addWidget(self.pushButtonSimulate)

@QtCore.pyqtSlot()
def on_pushButtonSimulate_clicked(self):
mouseReleaseEvent = QtGui.QMouseEvent(
QtCore.QEvent.MouseButtonRelease,
self.cursor().pos(),
QtCore.Qt.LeftButton,
QtCore.Qt.LeftButton,
QtCore.Qt.NoModifier,
)

QtCore.QCoreApplication.postEvent(self, mouseReleaseEvent)

def mouseReleaseEvent(self, event):
if event.button() == QtCore.Qt.LeftButton:
print "Mouse Release"

super(MyWindow, self).mouseReleaseEvent(event)

if __name__ == "__main__":
import sys

app = QtGui.QApplication(sys.argv)
app.setApplicationName('MyWindow')

main = MyWindow()
main.show()

sys.exit(app.exec_())

关于python - 模拟鼠标释放 Pyqt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15627661/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com