找回密码
 加入
搜索
查看: 3058|回复: 8

窗口边框宽度及标题栏的高度能用什么函数知道吗

[复制链接]
发表于 2008-12-18 22:11:19 | 显示全部楼层 |阅读模式
窗口边框宽度及标题栏的高度能用什么函数知道吗?
因为用了不同主题后,好像会有不同,有没有那位高手告知一下
 楼主| 发表于 2008-12-20 17:45:10 | 显示全部楼层
看样子没人知道这事
发表于 2008-12-20 17:57:04 | 显示全部楼层
宽度设置之后,在不同主题应该都是一样的吧。

而标题栏的高度默认是不支持自定义设置的,要定义的话,最简单的办法是自己创建一个没有标题栏的窗口,再手工画一个标题栏咯。
发表于 2008-12-20 18:06:22 | 显示全部楼层
这个到是没去研究,一般窗口标题分为2种,一种正常的普通标题栏,一种是窄标题栏。
应该在注册表某个位置的。
边框windows默认有,不可调节的,和可调节的,普通边框,镜框试边框,当然还有无标题的。
发表于 2008-12-29 16:31:55 | 显示全部楼层
发表于 2008-12-29 23:10:27 | 显示全部楼层
花时间帮你找了一下。

[au3]#Include <WinAPI.au3>
$h=_WinAPI_GetSystemMetrics($SM_CYCAPTION)
MsgBox(0,"以像素计算的普通窗口标题的高度",$h)[/au3]

利用这个函数来获得,_WinAPI_GetSystemMetrics,SM_CYCAPTION就是得到标题高度的。参数的意思请看下面说明:

       SM_CLEANBOOT 返回系统启动方式:
  0 正常启动
  1 安全模式启动
  2 网络安全模式启动
  SM_CMOUSEBUTTONS 返回值为系统支持的鼠标键数,返回0,则系统中没有安装鼠标。
  SM_CXBORDER,
  SM_CYBORDER 返回以像素值为单位的Windows窗口边框的宽度和高度,如果Windows的为3D形态,则
  等同于SM_CXEDGE参数
  SM_CXCURSOR,
  SM_CYCURSOR 返回以像素值为单位的标准光标的宽度和高度
  SM_CXDLGFRAME,
  SM_CYDLGFRAME 等同与SM_CXFIXEDFRAME and SM_CYFIXEDFRAME
  SM_CXDOUBLECLK,
  SM_CYDOUBLECLK 以像素值为单位的双击有效的矩形区域
  SM_CXEDGE,SM_CYEDGE 以像素值为单位的3D边框的宽度和高度
  SM_CXFIXEDFRAME,
  SM_CYFIXEDFRAME 围绕具有标题但无法改变尺寸的窗口(通常是一些对话框)的边框的厚度
  SM_CXFRAME,SM_CYFRAME 等同于SM_CXSIZEFRAME and SM_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 如果为TRUE或不为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的值则鼠标左右键交换,否则没有。

评分

参与人数 2金钱 +10 收起 理由
大绯狼 + 5
skyfree + 5

查看全部评分

发表于 2008-12-30 10:27:02 | 显示全部楼层
谢谢楼上的,学习了!
 楼主| 发表于 2009-3-13 14:54:39 | 显示全部楼层
好久没上来AKMM88辛苦了,我回去试试
谢谢了
发表于 2009-6-26 02:53:28 | 显示全部楼层
学习了......感谢
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-15 07:50 , Processed in 0.083379 second(s), 27 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表