开始尝试写博客了,分享下自己的一点积累和精力,希望对大家有用。在文档类型的mfc程序当中,有时需要设置程序界面大小跟桌面工作区的大小一样,可以通过在MainFrm.cpp的 PreCreateWindow(CREATESTRUCT& cs)函数中添加如下代码:
//获取桌面
CRect rcWorkArea;
SystemParametersInfo(SPI_GETWORKAREA, 0, (LPVOID)&rcWorkArea, 0);
//设置程序界面的大小
cs.cx=rcWorkArea.Width();
cs.cy=rcWorkArea.Height();
除此以外,还可以通过如下方式获得桌面任务栏的大小
CRect rcTaskBar;
HWND hwnd = ::FindWindow( "Shell_TrayWnd ", NULL);
::GetWindowRect(hwnd, &rcTaskBar);
int nHeight = rcTaskBar.Height();