在制作程序期间,我需要创建一个带有 QTextEdit 和 QPushButton 的小部件。我这样做了,但按钮看起来像 3D 对象。在此之前,我认为按钮是平的。
我试图更改按钮的颜色,但它仍然有音量。
from PyQt5 import QtWidgets
class Window(QtWidgets.QWidget):
def __init__(self):
QtWidgets.QWidget.__init__(self)
self.resize(300, 200)
self.setStyleSheet('background-color: white')
self.setWindowTitle('Test')
self.button = QtWidgets.QPushButton('Button')
self.box = QtWidgets.QVBoxLayout()
self.box.addWidget(self.button)
self.setLayout(self.box)
if __name__ == '__main__':
import sys
app = QtWidgets.QApplication(sys.argv)
win = Window()
win.show()
sys.exit(app.exec_())
如果我希望窗口保持白色,按钮平坦,该如何处理?
任何帮助将不胜感激。
最佳答案
除了删除边框之外,还必须将按钮的 flat 属性设置为 True:
from PyQt5 import QtWidgets
qss = """
#Window{
background-color: white
}
QPushButton[flat="true"]{
background-color: black;
border: 0px;
}
"""
class Window(QtWidgets.QWidget):
def __init__(self, parent=None):
super(Window, self).__init__(parent)
self.resize(300, 200)
self.setObjectName("Window")
self.setWindowTitle("Test")
self.button = QtWidgets.QPushButton("Button", flat=True)
box = QtWidgets.QVBoxLayout(self)
box.addWidget(self.button)
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
app.setStyleSheet(qss)
win = Window()
win.show()
sys.exit(app.exec_())
关于python - 如何在 PyQt5 中从头开始制作按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57197184/