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