我用Python写了一个小程序,现在我并排有3个按钮,我可以在每个按钮上放一个图标。如何仅显示图标而不是带图标的按钮?我希望你知道我的意思。我想删除我的按钮并仅显示图标。
这是我的代码:
import sys
from PyQt4 import QtGui
class Example(QtGui.QMainWindow):
def __init__(self):
super(Example, self).__init__()
self.initUI()
def initUI(self):
self.statusBar().showMessage('Start the game!')
self.setGeometry(300, 300, 250, 150)
panel = QtGui.QWidget()
grid = QtGui.QGridLayout()
p1 = QtGui.QPushButton("")
p1.setIcon(QtGui.QIcon('image1.jpg'))
p2 = QtGui.QPushButton("")
p2.setIcon(QtGui.QIcon('image2.jpg'))
p3 = QtGui.QPushButton("")
p3.setIcon(QtGui.QIcon('image3.jpg'))
p1.setMaximumHeight(1000)
p2.setMaximumHeight(1000)
p3.setMaximumHeight(1000)
grid.addWidget(p1,0,0)
grid.addWidget(p2,0,1)
grid.addWidget(p3,0,2)
panel.setLayout(grid)
self.setCentralWidget(panel)
self.setWindowTitle('MyGame')
self.show()
def main():
app = QtGui.QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
答案 0 :(得分:0)
在QLabel上使用.setGeometry
方法(lbl
)
如果您希望图片位于最右侧,可以像这样在HBoxLayout中添加空格项:
lbl.setGeometry(0,0,100,100)
spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
hbox.addItem(spacerItem)