Qt 设置边界半径时,角消失
以下代码:Qt 设置边界半径时,角消失,qt,pyqt,qtstylesheets,Qt,Pyqt,Qtstylesheets,以下代码: app = QApplication([]) mainWindow = QMainWindow() mainWindow.show() textEdit = QTextEdit() mainWindow.setCentralWidget(textEdit) app.setStyleSheet(""" QTextEdit { margin: 10px; border: 1px solid black; border-radius: 20px; } """) a
app = QApplication([])
mainWindow = QMainWindow()
mainWindow.show()
textEdit = QTextEdit()
mainWindow.setCentralWidget(textEdit)
app.setStyleSheet("""
QTextEdit
{
margin: 10px;
border: 1px solid black;
border-radius: 20px;
}
""")
app.exec_()
产生以下结果:
奇怪的是,如果我设置了背景色,则角会按预期显示:
当我删除边界半径时,两种情况下的角都会显示得很好,更奇怪的是,我实际上可以通过设置背景色:白色来快速修复这个问题。保证金与问题无关,我只是设置了保证金,以便更容易看到问题。这是怎么回事?这似乎与中的CSS/webkit问题类似。我可以用PyQt 5.6确认这个问题,我想这是一个bug 似乎默认情况下,
QTextEdit
有一个白色背景矩形,如果样式表中没有给定背景颜色,则在样式表中指定的背景上绘制,但如果样式表中指定了背景颜色,则不会绘制
为什么会这样,我不知道。我们可以在那里检查和/或报告错误
但是您也已经找到了一个解决方法(将背景色指定为白色或您喜欢的任何颜色),因此我建议您这样做