硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1922|回复: 4
收起左侧

[emWin] 新手使用WM_InvalidateWindow( WM_HBKWIN);屏幕无反应,请大佬指教

[复制链接]

2

主题

4

回帖

10

积分

新手上路

积分
10
发表于 2019-1-19 13:52:37 | 显示全部楼层 |阅读模式
裸机emwin,主函数循环使用WM_InvalidateWindow( WM_HBKWIN);,在重会过程中num++显示在液晶上,但是没反应
int main(void)
{
        delay_init(168);
        uart_init(115200);
        TIM3_Int_Init(999,83);         
        Key_Init();
        TFTLCD_Init();
        my_mem_init(SRAMIN);        
  printf("SRAMEX\r\n");        
        RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_CRC,ENABLE);
        WM_SetCreateFlags(WM_CF_MEMDEV);
        GUI_Init();
        DisUI_Main();
        
  while(1)
        {
                WM_InvalidateWindow( WM_HBKWIN);
                delay_ms(1000);
//                key=Key_Scan();
//                if(key!=0)
//                {
//                        WM_SetFocus(WM_HBKWIN);
//                        BUTTON_SetPressed(Main_Button, 1);
//                        GUI_SendKeyMsg(USE_ID_BUTTON1,1);
//                }
        }
}


void DisUI_Main(void)
{
        WM_SetCallback(WM_HBKWIN,_cbMainWindow);
        Main_Button=BUTTON_CreateEx(lcddev.width/2-16,lcddev.height-32,32,32,WM_HBKWIN, WM_CF_SHOW, 0, USE_ID_BUTTON1);
        BUTTON_SetBitmap( Main_Button, BUTTON_CI_UNPRESSED, &bmmain_button);
        GUI_Delay(500);
        
}


static void _cbMainWindow(WM_MESSAGE *pMsg)
{
        int     NCode;
        int     Id;
        switch(pMsg->MsgId)
        {
                case WM_PAINT:   
                        num++;
                        GUI_SetBkColor(GUI_BLACK);         
                        GUI_Clear();
                        GUI_SetColor(GUI_ORANGE);        
                        GUI_SetFont(&GUI_Font8x16x3x3);
                        GUI_DispStringHCenterAt("control",lcddev.width/2,50);
                        GUI_DispDecAt(num,10, 10, 3);
                        break;
                case WM_NOTIFY_PARENT:
                                Id = WM_GetId(pMsg->hWinSrc);
                                NCode = pMsg->Data.v;
                                if( NCode == WM_NOTIFICATION_CLICKED)                        
                                {                                
                                        switch(Id)
                                        {
                                                case USE_ID_BUTTON1:         
                                                        GUI_SetFont(&GUI_Font8x16x3x3);//éèÖÃ×Öìå
                                                        GUI_DispStringAt("smart control",0,0);
                                                break;
                                        }
                                }
                default:
                        WM_DefaultProc(pMsg);
        }
}


回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115778
QQ
发表于 2019-1-19 14:02:28 | 显示全部楼层
仅看你的程序没发现什么问题。

模拟器会用不,在模拟器上测测,我给你看看。
回复

使用道具 举报

2

主题

4

回帖

10

积分

新手上路

积分
10
 楼主| 发表于 2019-1-19 14:03:57 | 显示全部楼层
好的我用模拟器试下,现在在板子上不能用
回复

使用道具 举报

2

主题

4

回帖

10

积分

新手上路

积分
10
 楼主| 发表于 2019-1-19 14:26:49 | 显示全部楼层
eric2013 发表于 2019-1-19 14:02
仅看你的程序没发现什么问题。

模拟器会用不,在模拟器上测测,我给你看看。

用模拟器试了,还是没有变化
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115778
QQ
发表于 2019-1-19 15:43:38 | 显示全部楼层
蓝胖子 发表于 2019-1-19 14:26
用模拟器试了,还是没有变化

模拟器代码发上来,仅发测试部分即可
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-5-17 20:11 , Processed in 0.411629 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表