【问题标题】:Pyside: setting the background of a row in a QVBoxLayout widgetPyside:在 QVBoxLayout 小部件中设置行的背景
【发布时间】:2014-05-17 18:34:05
【问题描述】:

我有一个 QVBoxLayout 小部件,它有几行,每行包含几个按钮。在一个事件中,我想通过更改其背景来突出显示其中一行。我尝试了许多不同的方法,但都没有奏效。实现这一目标的好方法是什么?

【问题讨论】:

  • QVBoxLayout widget with a few rows, each containing several buttons -> 你确定不是在寻找 QGridLayout 吗?无论哪种方式,您是否在相应的小部件上尝试过setStyleSheet("background-color: black;");,您可以将黑色更改为您想要的颜色?
  • 我尝试的几乎所有东西都会出现这种错误:AttributeError: 'PySide.QtGui.QVBoxLayout' object has no attribute 'setStyleSheet'
  • 是的,因为该属性适用于 QWidgets。布局不是小部件。您将需要设置,例如在您的按钮或它们的容器小部件(如果有)的循环中。
  • 好的。你能提供一个简单的例子供我学习吗?
  • 如果你能提供你的 vbox 结构会更有用,然后人们可以更准确、更有用地为后代指出它。虽然,我不是蟒蛇大师。

标签: python qt pyside qtgui qlayout


【解决方案1】:

您可以在所需行中的小部件上执行以下操作,将黑色替换为您希望拥有的颜色:

myWidget.setStyleSheet("background-color: black;");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-04-15
    • 1970-01-01
    • 1970-01-01
    • 2015-10-15
    • 2013-06-15
    • 1970-01-01
    • 2023-04-04
    • 1970-01-01
    相关资源
    最近更新 更多