Python PyQt4窗口-工具栏操作不';不行。我怎样才能修好它们?
我制作了一个程序,在Linux中有一个工具栏,上面有一些操作。工具栏及其操作在Linux操作系统上运行得很好,但是当我在Windows机器上运行代码时,这些操作就不起作用了。一切看起来都和Linux上的一样(是的,我在Windows机器上安装了PyQt4),甚至是工具栏,但当我单击工具栏上的某个项目时,它只是不执行给定的处理程序。我尝试并制作了一个带有工具栏的基本PyQt4程序,只是为了测试错误是否是由于我的程序造成的,但结果是一样的。下面是一个基本的示例程序,它不起作用Python PyQt4窗口-工具栏操作不';不行。我怎样才能修好它们?,python,windows,action,pyqt4,toolbar,Python,Windows,Action,Pyqt4,Toolbar,我制作了一个程序,在Linux中有一个工具栏,上面有一些操作。工具栏及其操作在Linux操作系统上运行得很好,但是当我在Windows机器上运行代码时,这些操作就不起作用了。一切看起来都和Linux上的一样(是的,我在Windows机器上安装了PyQt4),甚至是工具栏,但当我单击工具栏上的某个项目时,它只是不执行给定的处理程序。我尝试并制作了一个带有工具栏的基本PyQt4程序,只是为了测试错误是否是由于我的程序造成的,但结果是一样的。下面是一个基本的示例程序,它不起作用 from PyQt4
from PyQt4 import QtGui, QtCore
import sys
def aTest(obj = None):
print "If this appears, the action works."
app = QtGui.QApplication(sys.argv)
w = QtGui.QMainWindow()
toolBar = w.addToolBar("toolbar")
action = QtGui.QAction(QtGui.QIcon("path to icon here"), "testAction", w)
w.connect(action, QtCore.SIGNAL("activated()"), aTest)
toolBar.addAction(action)
w.show()
app.exec_()
这段代码在Linux上运行没有问题,但在Windows上,这些操作在激活时不会做出反应。忽略代码中的输入错误
操作系统:Windows 7 Ultimate 32位(也不适用于XP)
Python版本:Python 2.7
PyQt4版本:PyQt-Py2.7-x86-gpl-4.8.4-1
我希望外面有人能帮助我。谢谢大家的关心和帮助
祝你今天愉快 它在Linux中工作很奇怪,因为我只能通过更改
w.connect(action, QtCore.SIGNAL("activated()"), aTest)
到
只有
changed()
、hovered()
、toggled()
和trigged()
列为有效信号。不幸的是,我手头没有Linux设备,无法进一步测试。谢谢您的回复!这解决了我的问题。但是,我可以向您保证,至少在我的Linux机器(Ubuntu 10.10)上,该程序甚至可以使用activated()作为信号。我也觉得很奇怪。好的,再次感谢您的回复!祝您有个美好的一天!我跑过去了。显然,activated()
在Qt3中使用过,为了兼容性,一些版本仍然存在。
w.connect(action, QtCore.SIGNAL("triggered()"), aTest)