一、開發(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 資源編輯器窗口中,點擊“編輯字符串表格筆淙肴縵倫柿希?BR> 標識號 中文(中國)
101 例子
102 中文
103 英文
201 Ensample
202 Chinese
203 English
⑶保存資源文件,寫如下代碼:(自定義裝載字符的函數(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
語言: 中文(中國)
⑶保存資源文件,寫如下代碼:
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
現(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 資源編輯器窗口中,點擊“編輯字符串表格筆淙肴縵倫柿希?BR> 標識號 中文(中國)
101 例子
102 中文
103 英文
201 Ensample
202 Chinese
203 English
⑶保存資源文件,寫如下代碼:(自定義裝載字符的函數(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
語言: 中文(中國)
⑶保存資源文件,寫如下代碼:
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