|

楼主 |
发表于 2020-9-25 09:59:58
|
显示全部楼层
谢谢汉哥回复,我的暂时没有遇到这个问题。本来是觉得刷频慢,所以想将静态和动态分开就方便一些。现在尝试使用内存设备,遇到一个问题:
case WM_PAINT:
GUI_MEMDEV_Clear(hMemkj);
GUI_MEMDEV_Select(hMemkj);
//GUI_MEMDEV_Write(hMembj);
GUI_MEMDEV_WriteAt(hMembj, 0, 0);
extern const unsigned char _acsisebj[14091UL + 1];
GUI_JPEG_Draw(_acsisebj, 14091UL + 1, 0, 0);
GUI_SetFont(&GUI_Fontsongti24x24);
GUI_SetTextMode(GUI_TEXTMODE_TRANS);
GUI_DispStringAt(buf, 10,0);
DrawLine(g_scale);
DrawText(g_scale);
DrawNeedle(g_scale);
GUI_DrawBitmap(&bmvol40, 12,190);
GUI_DrawBitmap(&bmtimes64, 0,100);
GUI_DrawBitmap(&bmfire48, 5,30);
GUI_MEMDEV_Select(0);
GUI_MEMDEV_WriteAt(hMembj, 0, 0);
break;
case WM_TIMER:
g_scale.NeedleCurPos += 3;
WM_InvalidateWindow(hWin);
WM_RestartTimer(pMsg->Data.v, 5);
这里是使用了定时器去修改指针值,然后重绘windown窗口,发现屏幕不断闪烁,
其实还有一个问题,虽然我设置了5ms的定时,但是实际上是没有那么快重绘的吧。
老实说,这样子让指针跑的很别扭
感谢回复
|
|