首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在运行时动态更改QStyle?

在运行时动态更改QStyle?
EN

Stack Overflow用户
提问于 2015-07-06 20:58:37
回答 2查看 515关注 0票数 1

我想在运行时调整现有的样式,特别是QStyle::PM_ToolBarIconSize。这能办到吗?据我所知,您只能继承QStyle并重写pixelMetric()。

编辑1:在QStyle::PM_ToolBarIconSize的具体情况下,我可以使用QToolBar::setIconSize,但这将为单个工具栏实例设置图标大小。我想改变基本的风格提示,以影响所有工具栏随时随地一次猛扑。QStyle::PM_ToolBarIconSize可能不是我想要调整的唯一样式,这只是我第一次看到它,正好有一个“更改此实例的图标大小”函数。

编辑2:我不能仅仅创建一个新的样式子类,因为当前的样式已经是基于样式表的自定义样式。有几种样式可供用户选择。我不想创建一堆新的样式,这样我就可以调整一些工具栏图标或菜单高度大小设置。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-08 20:45:18

这正是QProxyStyle的确切目的。

票数 1
EN

Stack Overflow用户

发布于 2015-07-07 06:17:57

那为什么不重写QStyle呢?子类将返回一个图标大小(通过pixelMetric),这取决于QStyle的可设置参数。

由于Qt没有动态QStyle机制,所以最好创建一个新样式实例,其图标大小已更改,然后将其设置为QApplication,而不是更改当前样式。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31255491

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档