我想以类似于功率计中的机械计数器的方式向窗口小部件显示一些值。到目前为止,我只编写了一个函数来将总值分成对应于所需位置的单个数字,它看起来像这样:
unsigned long value; // variable holding the value to be displayed
....... get the actual value
int firstPosition = value % 10; // 0-9
int secondPosition = int(value*0.1) % 10; // 0 - 9 * 10
int thirdPosition = int(value*0.01) % 10; // 0 - 9 * 100
int fourthPosition = int(value*0.001) % 10; // 0 - 9 * 1000
int fifthPosition = int(value*0.0001) % 10; // 0 - 9 * 10000
现在问题是,我如何才能执行实际动画以获得与物理设备类似的行为?有没有人做过类似的事情?
请注意我正在使用Qt库,以防它有所作为。
干杯。
答案 0 :(得分:1)
请参阅http://qt-project.org/doc/qt-5.0/qtwidgets/widgets-analogclock.html
上的模拟时钟教程通过调用update()
,使用一秒计时器为时钟设置动画。
在paintEvent()
期间,为当前时间绘制小部件。