|
GetSystemMetrics() 函数原型如下:int GetSystemMetrics( int nIndex); 该函数用来获取系统相关分辨率,系统分辨率包括多种情形,比如屏幕分辨率,窗口边框的高宽度等。获取不同的分辨率由参数 nIndex 来指定。比如获取屏幕分辨率可如下使用:
[Plain Text] 纯文本查看 复制代码 int _tmain(int argc, _TCHAR* argv[])
{
printf ("The screen dimension : %d x %d\n", GetSystemMetrics(SM_CXSCREEN), GetSystemMetrics(SM_CYSCREEN));
return 0;
}
运行输出:The screen dimension : 1280 x 1024
其它选项解释如下:
SM_CMOUSEBUTTONS 返回值为系统支持的鼠标键数,返回0,则系统中没有安装鼠标。
SM_CXBORDER, SM_CYBORDER
返回以像素值为单位的Windows窗口边框的宽度和高度,如果Windows的为3D形态,则 等同于 SM_CXEDGE 参数
SM_CXCURSOR, SM_CYCURSOR
返回以像素值为单位的标准光标的宽度和高度
SM_CXDLGFRAME, SM_CYDLGFRAME
等同于 SM_CXFIXEDFRAME 和 SM_CYFIXEDFRAME
SM_CXDOUBLECLK, SM_CYDOUBLECLK
以像素值为单位的双击有效的矩形区域
SM_CXEDGE,SM_CYEDGE
以像素值为单位的3D边框的宽度和高度
SM_CXFIXEDFRAME, SM_CYFIXEDFRAME
围绕具有标题但无法改变尺寸的窗口(通常是一些对话框)的边框的厚度
SM_CXFRAME,SM_CYFRAME
等同于SM_CXSIZEFRAME andSM_CYSIZEFRAME
SM_CXFULLSCREEN, SM_CYFULLSCREEN
全屏幕窗口的窗口区域的宽度和高度
SM_CXHSCROLL, SM_CYHSCROLL
水平滚动条的高度和水平滚动条上箭头的宽度
SM_CXHTHUMB
以像素为单位的水平滚动条上的滑动块宽度
SM_CXICON, SM_CYICON
系统缺省的图标的高度和宽度(一般为32*32)
SM_CXICONSPACING, SM_CYICONSPACING
以大图标方式查看Item时图标之间的间距,这个距离总是大于等于
SM_CXICON and SM_CYICON. SM_CXMAXIMIZED, SM_CYMAXIMIZED
处于顶层的最大化窗口的缺省尺寸
SM_CXMAXTRACK, SM_CYMAXTRACK
具有可改变尺寸边框和标题栏的窗口的缺省最大尺寸,如果窗口大于这个尺寸,窗口是不可移动的。
SM_CXMENUCHECK, SM_CYMENUCHECK
以像素为单位计算的菜单选中标记位图的尺寸
SM_CXMENUSIZE, SM_CYMENUSIZE
以像素计算的菜单栏按钮的尺寸
SM_CXMIN,SM_CYMIN
窗口所能达到的最小尺寸
SM_CXMINIMIZED, SM_CYMINIMIZED
正常的最小化窗口的尺寸
SM_CXMINTRACK, SM_CYMINTRACK
最小跟踪距离,当使用者拖动窗口移动距离小于这个值,窗口不会移动。
SM_CXSCREEN, SM_CYSCREEN
以像素为单位计算的屏幕尺寸。
SM_CXSIZE,SM_CYSIZE
以像素计算的标题栏按钮的尺寸
SM_CXSIZEFRAME, SM_CYSIZEFRAME
围绕可改变大小的窗口的边框的厚度
SM_CXSMICON, SM_CYSMICON
以像素计算的小图标的尺寸,小图标一般出现在窗口标题栏上。
SM_CXVSCROLL, SM_CYVSCROLL
以像素计算的垂直滚动条的宽度和垂直滚动条上箭头的高度
SM_CYCAPTION
以像素计算的普通窗口标题的高度
SM_CYMENU
以像素计算的单个菜单条的高度
SM_CYSMCAPTION
以像素计算的窗口小标题栏的高度
SM_CYVTHUMB
以像素计算的垂直滚动条中滚动块的高度
SM_DBCSENABLED
如果为 TRUE 或不为 0 的值表明系统安装了双字节版本的 USER.EXE ,为 FALSE 或 0 则不是。
SM_DEBUG
如果为 TRU E或不为 0 的值表明系统安装了 debug 版本的USER.EXE,为 FALSE 或 0 则不是。
SM_MENUDROPALIGNMENT
如果为 TRUE 或不为 0 的值下拉菜单是右对齐的否则是左对齐的。
SM_MOUSEPRESENT
如果为 TRUE 或不为 0 的值则安装了鼠标,否则没有安装。
SM_MOUSEWHEELPRESENT
如果为TRUE或不为0的值则安装了滚轮鼠标,否则没有安装。(Windows NT only)
SM_SWAPBUTTON
如果为 TRUE 或不为 0 的值则鼠标左右键交换,否则没有。 |
|