|
求问WINCE下开发WINAPI应用 关于WM_INITDIALOG
[复制链接]
我想开发一个很简单的应用程序 a.exe,点击一下这个exe就能出现个界面上显示平台还有的电池电量。
非常简单的应用 我在解码中加个TEXT 控件
因为里面没有任何的按钮 因为我就像打开就能够在TEXT控件中显示这个数据
因此我就在 WM_INITDIALOG 响应的时候添加 具体的程序是:
BOOL powerInfo::WndProc(UINT uMsg, WPARAM wParam, LPARAM lParam)
{
BOOL brc = FALSE;
RETAILMSG(1,(_T("WndProc \n")));
switch ( uMsg )
{
case WM_INITDIALOG:
RETAILMSG(1,(_T("WndProc::initial \n")));
mRootElement = (IElement*) lParam;
OnInitDialog();
LPCTSTR secbaper;
break;
case WM_VIEWELEMENT:
RETAILMSG(1,(_T("WndProc::VIEWELEMENT \n")));
break;
case WM_CLOSE:
RETAILMSG(1,(_T("WndProc::WM_CLOSE \n")));
OnCloseDialog();
brc = FALSE;
break;
case WM_COMMAND:
RETAILMSG(1,(_T("WndProc::WM_COMMAND \n")));
brc = OnCommand( LOWORD( wParam ), HIWORD( wParam ), (HWND) lParam );
break;
case WM_NOTIFY:
RETAILMSG(1,(_T("WndProc::WM_NOTIFY \n")));
brc = OnNotify((int)wParam,(LPNMHDR)lParam);
case WM_DESTROY:
RETAILMSG(1,(_T("WndProc::WM_DESTROY \n")));
mRootElement = NULL;
OnDestroy();
break;
default:
RETAILMSG(1,(_T("WndProc::default \n")));
brc = FALSE;
break;
}
return brc;
}
然后在 OnInitDialog() 函数中:
void powerInfo::OnInitDialog()
{
PSYSTEM_POWER_STATUS_EX pstatus;
HWND EditWnd1;
HWND EditWnd2;
BOOL fUpdate=TRUE;
BOOL brc;
LPCTSTR baper;
LPCTSTR secbaper;
secbaper=L"This is a test";
// SetDlgItemInt(GetHWnd(),s,IDC_BaText,FALSE);//(int)pstatus->BackupBatteryLifePercent
SetDlgItemText(GetHWnd(),IDC_BaText,secbaper);//(int)pstatus->BackupBatteryLifePercent
}
但是结果并不显示
我单步调试的时候 发现响应WM_INITDIALOG的时候 并没有把显示的窗口调出来 所以SetDlgItemText中的GetHWnd() 并不是TEXT控件的窗口
请问 我该怎么也才能实现这个功能呢?
谢谢
|
|