我试图在网格布局中添加一个简单的方块,但它似乎无法正常工作。
以下是代码:
self.resultFrame = QFrame()
self.resultFrame.setGeometry(100, 200, 0, 0)
self.resultFrame.setStyleSheet("QWidget { background-color: #000 }")
gridLayout.addWidget(self.resultFrame, 0, 0, 1, 4)
如果我将self.resultFrame
切换为QLabel
或QPushButton
,它似乎工作正常,但不适用于QFrame
。
我可能做错了什么?
答案 0 :(得分:0)
很难弄清楚你可能做错了什么,因为我们没有看到其余的代码,但至少我可以确认这个简单的例子在网格布局中绘制了一个黑框和按钮。
from PySide import QtGui, QtCore
class MyWindow(QtGui.QWidget):
def __init__(self, parent = None):
super(MyWindow, self).__init__(parent)
self.resultFrame = QtGui.QFrame()
self.resultFrame.setGeometry(100, 200, 0, 0)
self.resultFrame.setStyleSheet("QFrame { background-color: #000 }")
self.myButton = QtGui.QPushButton(self, 'test')
gridLayout = QtGui.QGridLayout()
gridLayout.addWidget(self.resultFrame, 0, 0)
gridLayout.addWidget(self.myButton, 0, 1)
self.setLayout(gridLayout)
self.resize(400, 400)
self.show()
win = MyWindow()
当将网格布局的addWidget方法与其余项目一起使用时,它也可能是您使用跨距的方式。例如,如果我在上面的代码中使用了gridLayout.addWidget(self.resultFrame,0,0,1,4),则该按钮将不再显示在其中!