0

我正在尝试在网格布局中添加一个简单的正方形,但它似乎不起作用。

这是代码:

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例如,如果我切换到 aQLabel或 a QPushButton,它似乎可以正常工作,但不能使用QFrame.

我可能做错了什么?

4

1 回答 1

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 方法与其余项目一起使用时,这也可能是您使用 span 的方式。例如,如果我在上面的代码中使用 gridLayout.addWidget(self.resultFrame, 0, 0, 1 ,4) 按钮将不再显示!

于 2015-08-29T01:03:00.147 回答