Python QPushButton setIcon:在按钮上放置图标

时间:2009-12-15 05:46:09

标签: python user-interface qt button icons

我想在ICON中放入一个按钮..代码应该是这样的:

    self.printButton = QtGui.QPushButton(self.tab_name)
    self.printButton.setIcon(QtGui.QPixmap('printer.tif'))
    self.printButton.setGeometry(QtCore.QRect(1030, 500, 161, 61))

但相反,它会给出错误消息:

    TypeError: argument 1 of QAbstractButton.setIcon() has an invalid type

这里缺少什么?

我们非常感谢所有意见和建议。

3 个答案:

答案 0 :(得分:9)

这很奇怪,我很快在我的C ++应用程序上测试了代码,它似乎正在运行......

也许通过使用它你可以纠正你的问题:

rMyIcon = QtGui.QPixmap("printer.tif");
self.printButton.setIcon(QtGui.QIcon(rMyIcon))

希望这有点帮助...

答案 1 :(得分:6)

创建一个QIcon而不是QPixmap以传递给setIcon()。尝试将第二行更改为

self.printButton.setIcon(QtGui.QIcon('printer.tif'))

答案 2 :(得分:2)

嗨Baysmith和Andy ......感谢您的投入。我测试了你的建议,它有效。我还必须添加setIconSize,否则图标显示得非常小。这是代码:

def printerButton(self,tab_name):
    self.printButton = QtGui.QPushButton(tab_name)
    self.printButton.setIcon(QtGui.QIcon('icons/printer.tif'))
    self.printButton.setIconSize(QtCore.QSize(130,130))
    self.printButton.setGeometry(QtCore.QRect(1030, 500, 161, 61))

希望这也能帮助别人.... |:0),

相关问题