感谢您使用微软产品。
调用ShowWindow(SW_HIDE)会把DIALOG隐藏起来,而不是在任务栏中显示为一个图标,你可以在OnPaint()里面调用ShowWindow(SW_HIDE);
如果想要在任务栏中显示为一个图标,在OnPaint()里面调用ShowWindow(SW_MINIMIZE)。- 微软亚洲技术中心 VC技术支持本贴子仅供CSDN的用户作为参考信息使用。其内容不具备任何法律保障。您需要考虑到并承担使用此信息可能带来的风险。具体事项可参见使用条款 (http://www.csdn.net/microsoft/terms.shtm)。
调用ShowWindow(SW_HIDE)会把DIALOG隐藏起来,而不是在任务栏中显示为一个图标,你可以在OnPaint()里面调用ShowWindow(SW_HIDE);
如果想要在任务栏中显示为一个图标,在OnPaint()里面调用ShowWindow(SW_MINIMIZE)。- 微软亚洲技术中心 VC技术支持本贴子仅供CSDN的用户作为参考信息使用。其内容不具备任何法律保障。您需要考虑到并承担使用此信息可能带来的风险。具体事项可参见使用条款 (http://www.csdn.net/microsoft/terms.shtm)。
WINDOWPLACEMENT wp;
wp.length=sizeof(WINDOWPLACEMENT); wp.flags=WPF_SETMINPOSITION;
wp.showCmd=SW_SHOWMINIMIZED;
int xSize=::GetSystemMetrics(SM_CXSCREEN);
int ySize=::GetSystemMetrics(SM_CYSCREEN); CRect rect;
GetWindowRect(&rect);
rect.OffsetRect((xSize-rect.Width())/2,(ySize-rect.Height())/2); wp.rcNormalPosition=rect;
SetWindowPlacement(&wp);
顶楼的,OnInitUpdate之后还要调用OnPaint,所以在那里做手脚没有用的,要在OnPaint里搞东东。
楼上的意思也差不多,不过兜圈子了。
我的做发是:重载WindowProc
然后。switch(messge){
case SYSTEMCOMMAND:
if(wParam==SC_MINIMIZE){
AfxGetApp()->m_pMainWnd()->ShowWindow(SW_HIDE);
return 0;
}
......
}