【发布时间】:2018-06-02 06:25:12
【问题描述】:
我有一个 Qt 接口:
- QWidget
- QVBoxLayout
- QMainLayout
- QPushButton
我的界面是这样的:
BACKGROUND_IMAGE_URL = "D:/image.png"
w = QWidget()
w.setStyleSheet("background-image:" + "url(" + BACKGROUND_IMAGE_URL + ");" + "border:0px")
w.repaint()
w.show()
button = QPushButton("btn1")
button.setStyleSheet("background-color: rgb(255, 255, 255); border:0px")
verticalLayout = QVBoxLayout()
verticalLayout.addWidget(button)
mainLayout = QGridLayout()
mainLayout.addLayout(verticalLayout, 0, 0, 1, 1)
w.setLayout(self.mainLayout)
即一个带有按钮的小部件。小部件背景是图像。按钮背景应该是白色的,但由于小部件背景图像,按钮样式表根本不显示。
我希望按钮背景位于小部件背景图像的顶部。关于如何做到这一点的任何想法?
【问题讨论】:
-
BACKGROUND_IMAGE_URL 是什么?
-
如果你在
w.setLayout之后w.show()怎么办? -
查看我的最新更改。只是一个文件网址
-
设置布局后显示没有任何区别。仍然看不到按钮的白色背景。请注意,如果
w.setStylesheet()使用背景颜色而不是背景图像,则按钮背景颜色将可见 -
它对我有用,请尝试以下操作:复制 .py 旁边的图像并更改为 Background_IMAGE_URL = "image.png"
标签: python pyqt qtstylesheets