qt - 在 PyQt 中模拟鼠标点击事件

标签 qt pyqt

我正在尝试在 ui.goButton 上模拟 Python 中的鼠标单击事件。小部件。

这是我所做的:

QtTest.QTest.mouseClick(self.ui.goButton, QtCore.Qt.LeftButton)

这是正确的方法吗?因为它不工作。

最佳答案

根据您对评论的回复,我将回答您的问题。

基本上可以发出信号,

emit signalToBeEmitted()

所以,如果你想发出 QPushButtonclicked()信号,

你必须继承 QPushButton你可以发射 emit clicked() 这样的信号.

This example将帮助您发出信号。

但我的问题是你为什么要这样做?

通过发出 clicked()信号,您将依次调用connect ed slot .. 那你为什么不能 直接调用插槽自己而不是发出信号然后调用插槽..

记住 slots只是普通函数它可以像其他函数一样被调用。

否则,如果插槽存在于您将通过信号连接的另一个对象中,则 发出自己的信号而不是弄乱预定义的。

恕我直言,即使是短期 也不要发出这样的预定义信号..

希望能帮助到你..

编辑:

糟糕,我没有看到 PyQt。我习惯于使用 C++ 进行 Qt。我对 Python 一无所知。但我相信 Qt 的大部分概念将保持通用。所以我会留下我的答案..

关于qt - 在 PyQt 中模拟鼠标点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3457804/

相关文章:

python - 如何在pyqt中创建一个滚动区域

python - 子类 QWebView 对超链接点击没有反应

python - PyQt5 - 组合框中有条件的颜色字段 - qsqltablemodel

python - 如何使用 PyQt5 在 QWidget 上设置 numpy 数组图像

c++ - 在命名空间中定义类的方法

python - 从可变数量的按钮 PyQt 获取颜色

python - PyQt5:绘制新图形时维护以前绘制的图形/线

python - 使用 PyQT,如何过滤具有自定义列表的 QComboBox 的 mousePressEvent

c++ - 如何检查 QT_VERSION 以包含不同的标题?

c++ - 连接两个具有不同参数的信号