|
导航:[首页]->[wingui]->[工作区大小变化的相关消息]
#分辨率改变WM_DISPLAYCHANGE #session改变WM_WTSSESSION_CHANGE 这个消息默认不会出发,需要显式地注册,见这里 #工作区改变(任务栏/自动隐藏任务栏) WM_SETTINGCHANGE wParam == SPI_SETWORKAREA #获得工作区大小 RECT rt; SystemParametersInfo(SPI_GETWORKAREA, 0, &rt, 0) ; // 获得工作区大小 #全屏显示 int full_x = GetSystemMetrics(SM_CXSCREEN); int full_y = GetSystemMetrics(SM_CYSCREEN); ::SetWindowPos(hWnd,HWND_TOPMOST,0,0,full_x,full_y,0 ); #任务栏 CRect rect; HWND hwnd= ::FindWindow(“Shell_TrayWnd”, “”); // 调用Findwindow函数,返回窗口指针 ::GetWindowRect(hwnd,&rect); #任务栏编程SHAppBarMessage #电源消息WM_POWERBROADCAST |