Emwin对话框里刷新显示数值到底是怎么实现的?郁闷了一个星期了都无果啊。
现在的方法如下:
回调函数中的部分程序:
case WM_PAINT:
for(t=0;t<1;t++) //重复显示背景图
{
GUI_DrawBitmap(&bm5050,0,(t+1)*50);
GUI_DrawBitmap(&bm5050,50,(t+1)*50);
}
DrawMyBiaozhen(); //绘制时速表指针
GUI_DispDecAt(tmp_progbar1,10,400,4); //显示adc数值
break;
然后在主程序中循环调用WM_InvalidateWindow(hMain);
这样刷新效果非常慢,完全不能用。请问有什么比较好的方法可以实现吗?万分感激
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
感谢回复。因为第一次用gui,所以对整个gui运作的方法云里雾里的,看手册看的头都大了。
请问怎么“发送消息到对话框,在回调函数里显示数值”呢?
我是想实现一个在对话框里显示adc采集到的数值,并用类似demo里面那个speedmeter形式的指针旋转指出adc所在位置(表盘用图片,指针用gui绘制),怎么才能实时显示数值,并且只刷新表针位置而不整个刷新背景图片呢?请不吝赐教下
具体函数我记不清了,就是向当前聚焦窗口发送一条消息,然后我看你有WM_PAINT消息的处理啊,在switch里添加对特定消息的处理就行,EDIT控件不是可以设置数值吗,设置完了用GUI_Exec或者GUI_Delay一下就显示出来了
感谢你的回复和指点。弱弱的问下,这种方法是不是要用文本小工具来实现?如果只是用GUI_DispDec可以实现吗?
一周热门 更多>