RECT rc;
SystemParametersInfo(SPI_GETWORKAREA, 0, (PVOID) &rc, 0); |
---------------------
桌面区域大小:
int cx = GetSystemMetrics(SM_CXSCREEN); int cy = GetSystemMetrics(SM_CYSCREEN); 或 HDC hdcScreen = GetDC( NULL ); int cx = GetDeviceCaps( hdcScreen, HORZRES ); int cy = GetDeviceCaps( hdcScreen, VERTRES ); DeleteObject( hdcScreen ); 任务栏: CWnd* pTaskWnd = FindWindow( _T( "Shell_TrayWnd "), NULL ); if( pTaskWnd ) pTaskWnd-> ShowWindow( FALSE ); |
-------------------------
struct ScreenSize
{
int x;
int y;
};
ScreenSize GetScreenSize()
{
ScreenSize scSize;
HDC hDC=::GetDC(HWND(NULL));
// 得到屏幕DC
int x=::GetDeviceCaps(hDC,HORZRES);
// 宽
int y=::GetDeviceCaps(hDC,VERTRES);
// 高
::ReleaseDC(HWND(NULL),hDC);
// 释放DC
scSize.x=x;
scSize.y=y;
return scSize;
}
----------------------------
这是MFC中的调用方式: HDC hdc=GetDC(NULL); //获得屏幕设备描述表句柄 int ScrWidth=GetDeviceCaps(hdc,HORZRES); //获取屏幕水平分辨率 int ScrHeight=GetDeviceCaps(hdc,VERTRES); //获取屏幕垂直分辨率 ReleaseDC(NULL,hdc); //释放屏幕设备描述表