我想扩展QLCDNumber以显示单位(如旧计算器中的Deg / Rad / Grad选择器)以及数字。正如我在高级别中看到的那样,要独立于样式,应该扩展绘图区域但是限制QLCDNumber在扩展区域上绘制。然后画出所需的。
另一种方法可能是在没有框架的情况下使用QLCDNumber创建复合窗口小部件,并使复合窗口小部件填充相同的背景颜色并在QLCDNumber之外绘制其他文本。
然而,另一种方法是重载setValue()s.t.最后一位数字为空,然后在那里绘制单位(甚至在里面使用QLabel)。
使事情有效并尽可能独立于风格的最佳方法是什么?
谢谢!
答案 0 :(得分:1)
如果您不介意在数字区域内显示单位,并且您对QLCDNumber
已提供的字符满意,则可以预先格式化您的数字+单位文本并进行设置as string
否则,我建议将QLCDNumber
和QLabel
窗口小部件打包到自定义复合窗口小部件中,并使用水平布局,您可以使用所需的方法,例如:克。
setValue(int value, const QString& units);