|
#include "MainTask.h"
#include "bsp_power.h"
WM_HWIN hShutDownWin;
#define ID_FRAMEWIN_0 (GUI_ID_USER + 0x00)
/*********************************************************************
*
* _aDialogCreate
*/
static const GUI_WIDGET_CREATE_INFO _aDialogCreate[] = {
{ FRAMEWIN_CreateIndirect, "ShutDown", ID_FRAMEWIN_0, 60, 100, 120, 100, 0, 0x0, 0 },
{ TEXT_CreateIndirect, "确认关机", GUI_ID_TEXT0, 27, 14, 80, 20, 0, 0x0, 0 },
{ BUTTON_CreateIndirect, "确认", GUI_ID_BUTTON0, 13, 44, 40, 20, 0, 0x0, 0 },
{ BUTTON_CreateIndirect, "取消", GUI_ID_BUTTON1, 65, 44, 40, 20, 0, 0x0, 0 },
};
/*********************************************************************
*
* _cbDialog
*/
static void _cbDialog(WM_MESSAGE * pMsg) {
WM_HWIN hItem;
int NCode;
int Id;
switch (pMsg->MsgId) {
case WM_INIT_DIALOG:
//
// Initialization of 'Framewin'
//
hItem = pMsg->hWin;
FRAMEWIN_SetTitleHeight(hItem, 20);
FRAMEWIN_SetFont(hItem,&GUI_Font20_ASCII);
hItem = WM_GetDialogItem(pMsg->hWin, GUI_ID_TEXT0);
TEXT_SetFont(hItem, &GUI_FontSong16x16);
hItem = WM_GetDialogItem(pMsg->hWin, GUI_ID_BUTTON0);
BUTTON_SetFont(hItem, &GUI_FontSong16x16);
hItem = WM_GetDialogItem(pMsg->hWin, GUI_ID_BUTTON1);
BUTTON_SetFont(hItem, &GUI_FontSong16x16);
break;
case WM_NOTIFY_PARENT:
Id = WM_GetId(pMsg->hWinSrc);
NCode = pMsg->Data.v;
switch(Id) {
case GUI_ID_BUTTON0: // Notifications sent by 'Button'
switch(NCode) {
case WM_NOTIFICATION_CLICKED:
break;
case WM_NOTIFICATION_RELEASED:
break;
}
break;
case GUI_ID_BUTTON1: /* 取消按键 */
switch(NCode) {
case WM_NOTIFICATION_CLICKED:
break;
case WM_NOTIFICATION_RELEASED:
WM_DeleteWindow(hShutDownWin);
break;
}
break;
}
break;
default:
WM_DefaultProc(pMsg);
break;
}
}
/*
*********************************************************************************************************
* 函 数 名: CreateShutDownBox
* 功能说明: 创建关机提示框
* 形 参: 无
* 返 回 值: 无
*********************************************************************************************************
*/
void CreateShutDownBox(void)
{
hShutDownWin = GUI_CreateDialogBox(_aDialogCreate, GUI_COUNTOF(_aDialogCreate), _cbDialog, WM_HBKWIN, 0, 0);
}
代码如上,一切正常,也能执行到WM_DeleteWindow处,但是就是删除不了这个窗口。这种情况遇到过吗
|
|