金牌会员
 
- 积分
- 2384
- 金钱
- 2384
- 注册时间
- 2012-11-22
- 在线时间
- 403 小时
|
发表于 2014-8-25 17:13:26
|
显示全部楼层
我的例程是加RT-Thread的,而且有许多窗口,你看着累呀。就是GUI_SendKeyMsg(MY_KEY_REFRESH, 1);
再加上回调函数
void time_call_back(WM_MESSAGE * pMsg)
{
WM_HWIN h_win = pMsg->hWin;
switch (pMsg -> MsgId)
{
case WM_PAINT:
{
paint_time(pMsg);
}
break;
case WM_INIT_DIALOG:
{
dialog_time_init(pMsg);
}
break;
case WM_KEY:
{
switch (((WM_KEY_INFO*)(pMsg->Data.p))->Key)
{
case MY_KEY_UP:
{
}
break;
case MY_KEY_DOWN:
{
}
break;
case MY_KEY_LEFT:
{
}
break;
case MY_KEY_RIGHT:
{
}
break;
case MY_KEY_ESCAPE:
{
/* 返回仪器状态菜单 */
{
GUI_EndDialog(h_win, 0);
GUI_CreateDialogBox(state_window, GUI_COUNTOF(state_window), &state_call_back, 0, 0, 0);
}
}
break;
case MY_KEY_ENTER:
{
}
break;
case MY_KEY_REFRESH://这部分用来更新时间
{
show_time(pMsg);
}
break;
}
}
break;
default:
{
WM_DefaultProc(pMsg);
}
break;
}
}
你发哪个按键消息,回调函数就处理哪个,不是挺简单的嘛。 |
|