gpt4 book ai didi

c++ - 如何计算出使用 Qt 样式表定位哪个小部件

转载 作者:行者123 更新时间:2023-11-30 03:12:08 24 4
gpt4 key购买 nike

我正在尝试使用 Qt 样式表来设计相当复杂的 UI。到目前为止,一切进展顺利,但我遇到了困难:

我如何确定我应该针对 UI 的特定部分定位的小部件名称?例如,如果我想更改 QTableView 单元格中的字体大小,我是否编写一个针对 QTableView 的样式?或者 QAbstractScrollArea?或者 QAbstractitemDelegate?事实证明,这些似乎都不起作用 - 我认为这是可以做到的,但这是一个确定小部件的神奇组合是针对 UI 的正确部分的情况。

style sheet guide有所帮助,但似乎缺少很多信息——自定义 QTableView 的示例只提到自定义单元格背景颜色,而没有提到更改字体颜色、大小、字体、网格线等。

我在这里遗漏了什么吗?也许使用样式表是错误的方法?我当然希望不会,因为替代方案(从 QStyle 派生)似乎要复杂得多。

干杯,

最佳答案

项目 View 中项目的呈现由委托(delegate)完成。从 Qt 4.4 开始,内置项 View 默认使用可样式化的委托(delegate)实现(请参阅此 blog post ),但您似乎想要它允许的更多控制。

在这种情况下,请确保您的模型的 data() 方法为外观相关的 ItemDataRoles 返回正确的值(我认为您会对 Qt::FontRole 特别感兴趣)。如果这还不够,或者不可能,您应该子类化 QStyledItemDelegate并重新实现它的 paint() 方法。

至于网格线,QTableView 有 gridStyle属性(property)。

关于c++ - 如何计算出使用 Qt 样式表定位哪个小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1487674/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com