几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量

几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 (http://www.dimcax.com/hust/index.php)
-   vc编程 (http://www.dimcax.com/hust/forumdisplay.php?f=76)
-   -   【转帖】如何在属性对话框标题栏加图标和最小化按钮? (http://www.dimcax.com/hust/showthread.php?t=2282)

huangyhg 2008-12-18 10:28 AM

【转帖】如何在属性对话框标题栏加图标和最小化按钮?
 
一\在OninitDialg增加以下代码
CPropSheet::OnInitDialog()
{
...........

// 最小化按钮
ModifyStyle(0, WS_MINIMIZEBOX | WS_MAXIMIZEBOX);

// 标题栏加图标
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon

// 修改了Style虽然能添加按钮,但不能响应,故需要在SysMenu上添加按钮
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL) {
pSysMenu->InsertMenu(0,MF_BYPOSITION | MF_STRING, SC_MINIMIZE, _T("最小化(&N)"));
pSysMenu->InsertMenu(0,MF_BYPOSITION | MF_STRING, SC_RESTORE, _T("还原(&R)"));
}
..........
}

二\ 所以需要重载如下OnSysCommand消息;
void CPropSheet::OnSysCommand(UINT nID, LPARAM lParam)
{
switch(nID)
{
case SC_MINIMIZE:
ShowWindow(SW_SHOWMINIMIZED);
return;
}
CPropertySheet::OnSysCommand(nID, lParam);
}


所有的时间均为北京时间。 现在的时间是 06:09 PM.