Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 设置布局的背景色_Python_Qt_Pyqt_Qtstylesheets_Qlayout - Fatal编程技术网

Python 设置布局的背景色

Python 设置布局的背景色,python,qt,pyqt,qtstylesheets,qlayout,Python,Qt,Pyqt,Qtstylesheets,Qlayout,由于布局对象没有属性“.setStyleSheet()”,如何设置给定布局的背景色 作为一个直观的解释,我可以设置标签和按钮背景颜色,但不能设置整个布局,其中包括间隔 在编程上,我将一些信息组织在水平布局中,并在一个框架中显示它们。我想为每个循环交替背景色 for param_name in parameters: hlayouts.append(QtGui.QHBoxLayout()) labels.append(QtGui.QLabel("%s"%param_name))

由于布局对象没有属性“.setStyleSheet()”,如何设置给定布局的背景色

作为一个直观的解释,我可以设置标签和按钮背景颜色,但不能设置整个布局,其中包括间隔

在编程上,我将一些信息组织在水平布局中,并在一个框架中显示它们。我想为每个循环交替背景色

for param_name in parameters:
    hlayouts.append(QtGui.QHBoxLayout())
    labels.append(QtGui.QLabel("%s"%param_name))
    sliders.append(QtGui.QSpacerItem(10,10,hPolicy=QtGui.QSizePolicy.Expanding))
    spins.append(QtGui.QDoubleSpinBox())

    spins[index].setValue(float(values.get(param_name)))
    labels[index].setStyleSheet("background-color:black;")
    spins[index].setStyleSheet("background-color:black;")

    hlayouts[index].addWidget(labels[index])
    hlayouts[index].addItem(sliders[index])
    hlayouts[index].addWidget(spins[index])

    index += 1

vlayout = QtGui.QVBoxLayout()
for i in range(len(hlayouts)):
    vlayout.addLayout(hlayouts[i])

您可以在一个空的QWidget上添加设置布局,并在这个小部件上设置样式表

for index, param_name in enumerate(parameters):
    container = QtGui.QWidget(self)
    layout = QtGui.QHBoxLayout(container )

    hlayouts.append(container)
    labels.append(QtGui.QLabel("%s"%param_name))
    sliders.append(QtGui.QSpacerItem(10,10,hPolicy=QtGui.QSizePolicy.Expanding))
    spins.append(QtGui.QDoubleSpinBox())

    spins[index].setValue(float(values.get(param_name)))
    container.setStyleSheet("background-color:black;")

    layout.addWidget(labels[index])
    layout.addItem(sliders[index])
    layout.addWidget(spins[index])


vlayout = QtGui.QVBoxLayout(self)
for widget in hlayouts:
    vlayout.addWidget(widget)

这并没有设置循环的每个布局,它设置了整个框架。我的错误,我修复了它。你不能在小部件上使用。addWidget(),它是容器,我没有。我在布局上使用addWidget。抱歉,我没有看到您的代码中的一些差异