我有以下代码:
frame = QFrame()
frame.setStyleSheet('QFrame { border: 1px solid {0}; background: {1}; }'.format(border, background))
但是我收到以下错误:KeyError: ' border'
我已经尝试了很多变种,但无法让它发挥作用。我试图设置QFrame的样式,但不是子窗口小部件。
答案 0 :(得分:0)
问题在于使用格式的格式存在混淆,如下所示:
"{key}".format(key=some_key)
要解决此问题,您必须使用{{
,}}
,如下所示:
app = QApplication(sys.argv)
frame = QFrame()
border = 6
background = '#ff0000'
frame.setStyleSheet("""QFrame{{ border: 1px solid {0}; background: {1}; }}""".format(border, background))
frame.show()
sys.exit(app.exec_())