我正在尝试在 ui.goButton
上模拟 Python 中的鼠标单击事件。小部件。
这是我所做的:
QtTest.QTest.mouseClick(self.ui.goButton, QtCore.Qt.LeftButton)
这是正确的方法吗?因为它不工作。
最佳答案
根据您对评论的回复,我将回答您的问题。
基本上可以发出信号,
emit signalToBeEmitted()
所以,如果你想发出
QPushButton
的clicked()
信号,你必须继承
QPushButton
你可以发射 像 emit clicked()
这样的信号.This example将帮助您发出信号。
但我的问题是你为什么要这样做?
通过发出
clicked()
信号,您将依次调用connect
ed slot .. 那你为什么不能 直接调用插槽自己而不是发出信号然后调用插槽..记住
slots
只是普通函数它可以像其他函数一样被调用。否则,如果插槽存在于您将通过信号连接的另一个对象中,则 发出自己的信号而不是弄乱预定义的。
恕我直言,即使是短期 也不要发出这样的预定义信号..
希望能帮助到你..
编辑:
糟糕,我没有看到 PyQt。我习惯于使用 C++ 进行 Qt。我对 Python 一无所知。但我相信 Qt 的大部分概念将保持通用。所以我会留下我的答案..
关于qt - 在 PyQt 中模拟鼠标点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3457804/