|

楼主 |
发表于 2018-8-31 13:33:54
|
显示全部楼层
代码是这样写的,创了一个窗口和回调函数,在回调函数中设置颜色- static void _cbWindow(WM_MESSAGE * pMsg) {
- switch (pMsg->MsgId) {
- case WM_PAINT:
- switch(GlobalColor){
- case e_ColorBlack:
- GUI_SetColor(GUI_BLACK);
- GUI_FillRect(0, 0, 800, 480);
- break;
- case e_ColorWhite:
- GUI_SetColor(GUI_WHITE);
- GUI_FillRect(0, 0, 800, 480);
- break;
- case e_ColorRed:
- GUI_SetColor(GUI_RED);
- GUI_FillRect(0, 0, 800, 480);
- break;
- case e_ColorGreen:
- GUI_SetColor(GUI_GREEN);
- GUI_FillRect(0, 0, 800, 480);
- break;
- case e_ColorBlue:
- GUI_SetColor(GUI_BLUE);
- GUI_FillRect(0, 0, 800, 480);
- break;
- case e_ColorBlocks:
- GUI_SetColor(GUI_MAKE_COLOR(0xF58388));
- GUI_FillRect(0, 0, 270, 80);
- GUI_SetColor(GUI_MAKE_COLOR(0xf36d74));
- GUI_FillRect(0, 80, 270, 80);
- // GUI_SetColor(0xf1565e);
- // GUI_FillRect(0, 160, 270, 80);
- // GUI_SetColor(0xef434b);
- // GUI_FillRect(0, 240, 270, 80);
- // GUI_SetColor(0xed2c35);
- // GUI_FillRect(0, 320, 270, 80);
- // GUI_SetColor(0xe1131e);
- // GUI_FillRect(0, 400, 270, 80);
- //
- // GUI_SetColor(0xb5ffb5);
- // GUI_FillRect(270, 0, 260, 80);
- // GUI_SetColor(0x80ff80);
- // GUI_FillRect(270, 80, 260, 80);
- // GUI_SetColor(0x55ff55);
- // GUI_FillRect(270, 160, 260, 80);
- // GUI_SetColor(0x15ff15);
- // GUI_FillRect(270, 240, 260, 80);
- // GUI_SetColor(0x00dd00);
- // GUI_FillRect(270, 320, 260, 80);
- // GUI_SetColor(0x00aa00);
- // GUI_FillRect(270, 400, 260, 80);
- //
- // GUI_SetColor(0x9191ff);
- // GUI_FillRect(530, 0, 270, 80);
- // GUI_SetColor(0x6a6aff);
- // GUI_FillRect(530, 80, 270, 80);
- // GUI_SetColor(0x3c3cff);
- // GUI_FillRect(530, 160, 270, 80);
- // GUI_SetColor(0x1a1aff);
- // GUI_FillRect(530, 240, 270, 80);
- // GUI_SetColor(0x0000f9);
- // GUI_FillRect(530, 320, 270, 80);
- // GUI_SetColor(0x0000d5);
- // GUI_FillRect(530, 400, 270, 80);
- break;
- case e_GrayScale:
- break;
- }
- break;
- }
- }
- void ColorPaint(e_ColorCalibrating Color)
- {
- static WM_HWIN hWin;
-
- static uint8_t flag = 1;
- if (1 == flag) {
- hWin = WINDOW_CreateEx(0, 0, 800, 480, MainMenuhWin, WM_CF_STAYONTOP | WM_CF_HIDE, 0, 0, _cbWindow);
- flag = 0;
- }
- switch(Color){
- case e_BackToNormal:
- WM_HideWindow(hWin);
- break;
- case e_ColorBlack:
- case e_ColorWhite:
- case e_ColorRed:
- case e_ColorGreen:
- case e_ColorBlue:
- case e_ColorBlocks:
- case e_GrayScale:
- GlobalColor = Color;
- WM_InvalidateWindow(hWin);
- WM_ShowWindow(hWin);
-
- break;
- default:
- break;
- }
- }
复制代码 |
|