Posted on 2009-11-20 10:44
daiybh 閱讀(814)
評(píng)論(0) 編輯 收藏 引用 所屬分類:
mfc
要想使 程序啟動(dòng)的時(shí)候直接隱藏(或者最小化到tray)有如下辦法
1 在OnInitDialog ()中
SetTimer(1,100,null)
在OnTimer(UINT nIDEvent) 中
if( nIDEvent==1)
{
ShowWindow(sw_hide);
KillTimer(1);
}
///這種方法 會(huì)出現(xiàn) 程序在顯示器上 閃一下的效果。。即使 timer 時(shí)間很短 ,也會(huì)有。
2 重載 WM_WINDOWPOSCHANGING
在重載函數(shù)內(nèi)實(shí)現(xiàn):
OnWindowPosChanging(WINDOWPOS FAR* lpwndpos)
{
if( !m_bShowWindow)
lpwndpos->flags &= ~SWP_SHOWWINDOW;
CDialog::OnWindowPosChanging(lpwndpos);
// TODO: Add your message handler code here
}
m_bShowWindow 是我的一個(gè)變量,初始值為false
// 如果 m_bShowWindow 一直為false ,那么程序就見不到人了。。
所以應(yīng)該給 True
在OnInitDialog ()中
SetTimer(1,1000,null)
在OnTimer(UINT nIDEvent) 中
if( nIDEvent==1)
{
m_bShowWindow =true;
KillTimer(1);
}
//使用這種方法 程序不會(huì)閃一下。。。