首先要在启动时隐藏掉dialog。。
由于基于dialog的mfc程序在启动时要比sdi/mdi的诡异一点。。所以在OnInitDialog是我设置ShowWindow(SW_HIDE);无效。。google了一下。。发现可以用定时器解决。。目前也采用这个方法。。
1. 在OnInitDialog中setTimer;
SetTimer(1 , 55 , NULL); // 第一个参数是id..等下onTimer要用到;
// 第二个参数是间隔时间,单位毫秒。。我记得win好像是55毫秒级的;
2. 添加WM_TIMER消息宏;
BEGIN_MESSAGE_MAP(CDesktopDlg, CDialog)
........
ON_WM_TIMER() // 其他的我拿掉了。。这个添加到这个位置。。
END_MESSAGE_MAP()
3. 添加响应事件;
// .h
1
protected:
2
.
3
afx_msg void OnTimer(UINT nIDEvent); // 声明

2


3

// .cpp
1
void CDesktopDlg::OnTimer(UINT nIDEvent)
2

{
3
if (nIDEvent == 1)
4
{
5
KillTimer(1); // 这个貌似应该有DeleteTimer之类的。。不过我没找到。。
6
ShowWindow(SW_HIDE); // 隐掉它。。
7
}
8
}

2



3

4



5

6

7

8

ok..下一步要把托盘搞出来。。