win32 5.4 对话框 使用静态控件

  1. 静态控件初步介绍:
    1. 静态控件是基于 Static 类,之所以叫 “静态”控件,是因为它们“安静”,不会因为你点击就向对话框发送“WM_COMMAND”消息,所以,一般静态控件的ID是没有什么用处的,定义时常常将它们定位-1,如果需要在程序中改变静态控件指定唯一的ID以便记性操作。
    2. 资源脚本文件中可以使用缩写的基于Static类的有LTEXT、CTEXT、RTEXT(三类不同对齐方向的文本框)和ICON(图标框),除此之外,Static类还可以用CONTROL语句的方式来派生出不同的控件来。在这里插入图片描述
  2. 静态控件的用法:
    1. 文本框:
      1. 对于文本框,超过一定长度进行换行,但如果指定SS_SIMPLE风格的话,就不会自动换行。
      2. 可以在程序中用 SetWindowText 或 发送 WM_SETEXT 消息来改动改变显示的文本。在这里插入图片描述
      3. 也可以用GetWinowText或发送WM_GETTEXT消息来获取其中的文本。
    2. 用静态控件来构筑简单的线条或图形:
      1. 如果指定 SS_BLACKFRAME,SS_GRAYFRAME,SS_WHITEFRAME风格,那么静态工件显示为填充的矩形,填充颜色分别是黑色、灰色或白色。
      2. 而指定SS_BLACKRECT,SS_GRAYRECT,SS_WHITERECT风格的话,则显示为非填充的矩形框,边线颜色是黑色、灰色或白色。
    3. 用静态控件来做立体感的线条或边框:
      1. 指定 SS_ETCHEDHORZ风格,显示为横线。
      2. 指定 SS_ETCHEDVERT风格,显示为竖线。
      3. 指定 SS_ETCHEDFRAME风格,显示为立体的矩形框,视觉上的效果类似没有文字的DROUPBOX。
    4. 控件用于图形显示:
      1. 当图形是图标时,可以使用 ICON缩写语句,其默认风格是SS_ICON。

      2. 如果使用位图,则可以使用 SS_BITMAP风格,如本程序位图就是这样定义的:在这里插入图片描述
        在这里插入图片描述

      3. 程序可以通过控件发送 STM_SETIMAGE消息来设置新的图片:

        1. 消息的wParam指定图片的格式,可以使 IMAGE_BITMAP,IMAGE_CURSOR和IMAGE_ICON
        2. lParam是图片的句柄,如果是位图,lParam就是用 LoadBitmap状图位图的句柄,如果是光标和图片表,则就是用 LaodCursor和LoadIcon装入句柄。

        在这里插入图片描述在这里插入图片描述