VB 中資源文件的多種使用技巧
發(fā)表時間:2024-02-15 來源:明輝站整理相關軟件相關文章人氣:
[摘要]一、開發(fā)中英(簡、繁)雙版本 現(xiàn)在比較流行的軟件都會有中文版、英文版、繁體版等等多個版本,并可以根據(jù)系統(tǒng)的語言自動顯示相適應的版本,那么這個功能在 VB 是如何實現(xiàn)得呢的:1、 首先通過 API 函數(shù)GetSystemDefaultLCID 判斷系統(tǒng)的語言Option ExplicitDim l...
一、開發(fā)中英(簡、繁)雙版本
現(xiàn)在比較流行的軟件都會有中文版、英文版、繁體版等等多個版本,并可以根據(jù)系統(tǒng)的語言自動顯示相適應的版本,那么這個功能在 VB 是如何實現(xiàn)得呢的:
1、 首先通過 API 函數(shù)GetSystemDefaultLCID 判斷系統(tǒng)的語言
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 "當前系統(tǒng)為:中文繁體", , "語言"
Case &H804
MsgBox "當前系統(tǒng)為:中文簡體", , "語言"
lang = "1"
Case &H409
MsgBox "當前系統(tǒng)為:英文", , "語言"
lang = "2"
End Select
End Sub
2、然后程序就可以加載保存在資源文件(這里我們就是使用的這種方法)、注冊表、INI 文件、文本文件或其他文件中的各類字符串,以達到達到實現(xiàn)多種語言的目的。
、艈 VB6.0,在“外接程序→外接程序管理器”中加載“Visual Basic 6 資源編輯器”
、圃 VB 資源編輯器窗口中,點擊“編輯字符串表格”輸入如下資料:
標識號 中文(中國)
101 例子
102 中文
103 英文
201 Ensample
202 Chinese
203 English
、潜4尜Y源文件,寫如下代碼:(自定義裝載字符的函數(shù) 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 會自動實現(xiàn)多種語言轉換!
二、 直接播放EXE文件中的聲音文件
使用資源文件,可以直接在在EXE文件中播放聲音文件(WAV文件),使程序顯得更加專業(yè)。
、艈 VB6.0,在“外接程序→外接程序管理器”中加載“Visual Basic 6 資源編輯器”
、圃 VB 資源編輯器窗口中,點擊“添加自定義資料”,增加任意的 WAV 文件,再雙擊剛剛創(chuàng)建的自定義資源,彈出”編輯屬性”窗口,定義如下:
類型: "WAVE"
標識號: 102
語言: 中文(中國)
、潜4尜Y源文件,寫如下代碼:
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) 注釋:加載光標