QWidget stylesheet添加边框不影响子控件
要在QWidget上添加边框,同时不影响子控件,可以使用QFrame作为QWidget的子控件,并将QFrame的边框样式设置为需要的样式。
以下是一个示例代码:
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QFrame, QPushButton
from PyQt5.QtCore import Qt
app = QApplication([])
# 创建父控件
widget = QWidget()
# 创建子控件布局
layout = QVBoxLayout(widget)
# 创建一个QFrame作为子控件
frame = QFrame()
frame.setFrameShape(QFrame.Box) # 设置边框形状为Box
frame.setLineWidth(2) # 设置边框宽度
frame.setStyleSheet("border-color: red;") # 设置边框颜色
# 将子控件添加到布局中
layout.addWidget(frame)
# 创建一个QPushButton作为子控件
button = QPushButton("Button")
# 将按钮添加到QFrame中
frame.layout().addWidget(button)
widget.show()
app.exec_()
在这个例子中,我们创建了一个QWidget作为父控件,并创建了一个QFrame作为子控件。我们在QFrame上设置了边框样式,并将QPushButton添加到QFrame中。由于边框样式只应用于QFrame,所以不会影响到QPushButton。
希望对你有帮助
原文地址: https://www.cveoy.top/t/topic/iXxU 著作权归作者所有。请勿转载和采集!