• VB 中资源文件的多种使用技巧


     VB 中资源文件的多种使用技巧

    作者来源: 
    阅读 1514 人次 , 2006-5-18 11:50:00 


    一、开发中英(简、繁)双版本

      现在比较流行的软件都会有中文版、英文版、繁体版等等多个版本,并可以根据系统的语言自动显示相适应的版本,那么这个功能在 VB 是如何实现得呢的:

    1 、 首先通过 API 函数GetSystemDefaultLCID 判断系统的语言

    Option Explicit
    Dim lang As String
    Private Declare Function GetSystemDefaultLCID Lib "kernel32" () As Long
    Private Sub Form_Load()
    Dim LocaleID As Long
    LocaleID = GetSystemDefaultLCID
    Select Case LocaleID
    Case &H404
    MsgBox "当前系统为:中文繁体", , "语言"
    Case &H804
    MsgBox "当前系统为:中文简体", , "语言"
    lang = "1"
    Case &H409
    MsgBox "当前系统为:英文", , "语言"
    lang = "2"
    End Select
    End Sub


    2 、然后程序就可以加载保存在资源文件(这里我们就是使用的这种方法)、注册表、INI 文件、文本文件或其他文件中的各类字符串,以达到达到实现多种语言的目的。
      ⑴启动 VB6.0,在“外接程序→外接程序管理器”中加载“Visual Basic 6 资源编辑器”

      ⑵在 VB 资源编辑器窗口中,点击“编辑字符串表格”输入如下资料:
      标识号 中文(中国)
      101 例子
      102 中文
      103 英文
      201 Ensample
      202 Chinese
      203 English

      ⑶保存资源文件,写如下代码:(自定义装载字符的函数 LoadString)

    Sub LoadString()
    Me.Caption = LoadResString(Int(lang & "01"))
    Command1(0).Caption = LoadResString(Int(lang & "02"))
    Command1(1).Caption = LoadResString(Int(lang & "03"))
    End Sub


      ⑷怎么样一个简单的中英双版本的程序就做出来了,如果把 lang 的值设置为 1,则显示中文,如果把 lang 的值设置为 2,则显示英文。

    ps:更简单实用的方法是:把不同语言文字放在同一个标识号ID对应的不同字符串表格中即可。VB 会自动实现多种语言转换!


    二、 直接播放EXE文件中的声音文件

      使用资源文件,可以直接在在EXE文件中播放声音文件(WAV文件),使程序显得更加专业。
      ⑴启动 VB6.0,在“外接程序→外接程序管理器”中加载“Visual Basic 6 资源编辑器”

      ⑵在 VB 资源编辑器窗口中,点击“添加自定义资料”,增加任意的 WAV 文件,再双击刚刚创建的自定义资源,弹出”编辑属性”窗口,定义如下:
      类型: "WAVE"
      标识号: 102
      语言: 中文(中国)

      ⑶保存资源文件,写如下代码:

    Option Explicit
    Private Declare Function GetSystemDefaultLCID Lib "kernel32" () As Long
    Private Declare Function sndPlaySoundFromMemory Lib "winmm.dll" Alias "sndPlaySoundA" (lpszSoundName As Any, ByVal uFlags As Long) As Long
    Public Const SND_ASYNC = &H1&
    Public Const SND_MEMORY = &H4&
    Private Sub Command5_Click() 注释:播放 WAV 文件
    Dim bArr() As Byte
    bArr = LoadResData(102, "WAVE")
    sndPlaySoundFromMemory bArr(0), SND_ASYNC Or SND_MEMORY
    End Sub


      ⑷按 F5 运行本程序,点击 Command 按钮,就可以听到你选定的 WAV 文件的声音了。

    三、 直接调用各类图标、光标图片

      在一个程序中,我们可能需要调用多个图标、光标、图片文件,一般来说我们主要是使用 ImageList 控件,不过其时使用资源文件是最好的方法(可以少使用一个控件呀)。
      ⑴启动 VB6.0,在“外接程序→外接程序管理器”中加载“Visual Basic 6 资源编辑器”

      ⑵在 VB 资源编辑器窗口中,点击“添加光标”,“添加图标”,“添加位图”,装载所需要的文件。

      ⑶程序代码如下:

    Me.Icon = LoadResPicture(101, vbResIcon) 注释:加载图标
    Picture1.Picture = LoadResPicture(101, vbResBitmap) 注释:加载位图
    Command1.MouseIcon = LoadResPicture(101, vbResCursor) 注释:加载光标


  • 相关阅读:
    MyBatis学习 之 三、动态SQL语句
    MyBatis学习 之 三、动态SQL语句
    MyBatis学习 之 二、SQL语句映射文件(2)增删改查、参数、缓存
    MyBatis学习 之 二、SQL语句映射文件(2)增删改查、参数、缓存
    Spring3 MVC使用@ResponseBody的乱码问题及解决办法
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
  • 原文地址:https://www.cnblogs.com/todd/p/833340.html
Copyright © 2020-2023  润新知