vc++得到工作列的高度和位置
1.判斷位置
systemparametersinfo(spi_getworkarea, 0, &rt, 0)
//工作列在下面的高度
int y = ::getsystemmetrics(sm_cyscreen)-rt.height();
上面
int y = rt.top;
左
int y = rt.left;
右
int y = ::getsystemmetrics(sm_cxscreen)-rt.width();
2.得到高度,然後可判斷位置
crect rect;
cwnd *pwndprev= findwindow("shell_traywnd", "");
pwndprev->getwindowrect(&rect);
就是工作列的高度
if(rect.top>0)//下面
if(rect.left>0)//左面
vc++得到和改變螢幕的解析度
//獲取螢幕的解析度
int nfullwidth=getsystemmetrics(sm_cxscreen);
int nfullheight=getsystemmetrics(sm_cyscreen);
devmode lpdevmode;
lpdevmode.dmbitsperpel=32;//修改為32位顏色
lpdevmode.dmpelswidth=1024;//解析度x為1024
lpdevmode.dmdisplayfrequency=85;//重新整理率為85hz
lpdevmode.dmpelsheight=768;//解析度y為768
lpdevmode.dmsize=sizeof(lpdevmode);
lpdevmode.dmfields =dm_pelswidth|dm_pelsheight|dm_bitsperpel|dm_displayfrequency;
changedisplaysettings(&lpdevmode,1);
changedisplaysettings用vc實現動態改變windows的顯示特性
通過訊息控制窗體最大化和還原
//還原
sendmessage(wm_syscommand,sc_restore,0);
//最大化
sendmessage(wm_syscommand,sc_maximize,0);
//最小化
sendmessage(wm_syscommand,sc_minimize,0);
**
VC取得工作列高度的方法
本文簡單介紹了vc取得工作列高度的兩個實現方法,具體 如程式設計客棧下所示,讀者可根據自身需求選擇或加以完善修改。方法一 trect rt systemparametersinfo spi getworkarea,0,rt,0 工作列在下面的高度 int y getsyst 上面 y rt.top ...
VC獲得桌面工作區與工作列大小 寬度與高度
獲得桌面工作區大小,即不包括工作列的大小,製作視窗全屏時經常用到,方法如下 rect rt systemparametersinfo spi getworkarea,0,pvoid rt,0 獲得工作列高度與寬度方法有二 1.判斷位置 rect rt systemparametersinfo spi...
VC環境中獲取窗體標題欄的位置和高度
通過呼叫系統函式 getsystemmetrics in int nindex 函式只有乙個引數,75個可選引數值,設定不同的引數值可以獲取到相應的資訊,比如獲取系統解析度 窗體顯示區域的寬度和高度 滾動條的寬度和高度等。此處介紹傳遞相應的引數獲取標題欄的資訊,getsystemmetrics sm...