Qt QDialog 圆角样式设置失效问题解决方法
可能产生这种情况的原因有两种可能性:一是没有正确设置QDialog的样式表,二是可能有其他样式表或代码覆盖了圆角的设置。\n\n首先,确保正确设置了QDialog的样式表。可以通过以下方式来设置样式表:\n\ncpp\nCallReminderDialog::CallReminderDialog(QWidget *parent) : QDialog(parent)\n{\n setStyleSheet("QDialog#CallReminderDialog{background-color: rgba(20, 25, 29,1); border-radius:20px;}");\n}\n\n\n如果仍然没有生效,可以尝试在样式表中添加!important来强制应用样式:\n\ncpp\nCallReminderDialog::CallReminderDialog(QWidget *parent) : QDialog(parent)\n{\n setStyleSheet("QDialog#CallReminderDialog{background-color: rgba(20, 25, 29,1) !important; border-radius:20px !important;}");\n}\n\n\n如果以上方法仍然无效,可能是其他样式表或代码覆盖了圆角的设置。可以尝试在设置圆角样式之前,先将其他可能影响圆角的样式表或代码移除或禁用,然后再重新设置圆角样式。\n\n另外,还需要确保在QWidget的派生类中正确设置了QDialog的objectName属性为"CallReminderDialog",例如:\n\ncpp\nCallReminderDialog::CallReminderDialog(QWidget *parent) : QDialog(parent)\n{\n setObjectName("CallReminderDialog");\n}\n\n\n通过以上方法,应该能够正确设置QDialog的背景色和圆角样式。如果仍然无效,可能需要检查其他可能的代码或样式表是否对QDialog的样式有影响。
原文地址: https://www.cveoy.top/t/topic/p95J 著作权归作者所有。请勿转载和采集!