win32 5.5 字符串资源

  1. 在资源中定义字符串:
    1. 程序中用到的字符串常常定义在 .const 段中,但Windows也提供了另外一种使用字符串常量的方法,那就是在资源中定义。
    2. 虽然在资源中定义比较复杂一点,但它带来的好处是便于开发不同语言的版本,比如,要退出其他语种版本,只需要修改资源中的字符串表就可以了。
    3. 即使语言转换的是由第三者通过修改可执行文件来做的(如编程爱好者常常做的汉化工作),修改资源也远比修改代码来得快捷和安全。
    4. 另外,一些API使用到的字符串必须定义在资源里面,比如菜单帮助的MenuHelp函数等。
  2. 字符串资源的使用:
    1. 在资源中定义字符串:

      在这里插入图片描述

    2. 全部字符串组成一个字符串表,和其他资源定义不同,由于整个资源只能定义一个字符串表,所以字符串表没有资源ID,但是表中的不同字符串分别有一个字符串ID。

    3. 在代码中使用字符串资源:
      直接使用 LoadSting 把字符串装入到缓冲区(内存)中,就可以了。
      在这里插入图片描述

    4. 多语言代码解决方案:

      1. 在资源中定义字符串可以这样定义 1xxx 是中文 / 2xxx是英文:
        在这里插入图片描述
      2. 在代码中,直接 设置 dwLanguage 默认为中文 1000, ?xxx 为其 字符串座标, 通过 1000 + ?xxx 来获取中文,要获取英文直接把 dwLanguage 设置为 2000,就自动获取英文了。在这里插入图片描述
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章