以编程方式确定Qt样式表选项?

时间:2010-12-13 23:45:04

标签: c++ qt qtstylesheets

是否可以在运行时在Qt中查找样式表值?

我正在处理从QPushButton派生的自定义按钮,该按钮具有一些样式表属性集。我希望能够查找一些样式表设置,例如边框宽度,marginpadding-toppadding-leftpadding-right等。这是否可以做到这一点没有调用widget->getStyleSheet()并自己解析值?

2 个答案:

答案 0 :(得分:5)

在内部,当您调用QApplication :: setStyleSheet()时,Qt会创建一个名为QStyleSheetStyle的QStyle子类。

这意味着您可以通过常规QStyle方法查询样式表信息。只需记住正确填写选项和小部件参数,以确保从样式表中获得正确的值。

答案 1 :(得分:3)

不要这么认为,你可以通过逐步完成绘图代码来找到一些东西。但是样式表的解析和应用程序已经过优化,并且使用了大量的预处理。我甚至不认为你可以访问小部件的样式表,如果它实际上是在父级中设置的。