有几个参数比较模糊,比如SM_CXBORDER与SM_CXFRAME,不都是边框吗?
还有窗口的Frame是指的哪一部分?
SM_CYCAPTION从窗口的最顶部开始,还是从SM_CYFRAME以下开始???

解决方案 »

  1.   

    SM_CXBORDER 是边
    SM_CXFRAME 是厚度, 水平方向 frame 框的厚度
    SM_CYCAPTION 是 caption 的高度
    SM_CYFRAME 是厚度, 垂直方向 frame 框的厚度SM_CXBORDER = 1
    SM_CXFRAME = 4
    SM_CYCAPTION = 19
    SM_CYFRAME = 4SM_CYCAPTION 应该是从窗口的 SM_CYFRAME 以下开始的
      

  2.   

    上面的 1,4,19,4 是在 Windows Server 2003 中的输出的 SM_CXBORDER, SM_CXFRAME, SM_CYCAPTION,SM_CYFRAME 的值 .
      

  3.   

    对于一个普通的 dialog/sdi 窗口, 从外到内, 顺序应该是: SM_CXBORDER, SM_CXFRAME
    而上面的 title, 从垂直方向算, 从外到内, 顺序应该是: SM_CXBORDER, SM_CXFRAME, SM_CYCAPTION
      

  4.   

    好像SM_CXBORDER是对话框风格窗口的边框宽度,overlapped window没有SM_CXBORDER