程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> Visual Basic語言 >> VB綜合教程 >> 讓你的VB程序支持多國語言的切換

讓你的VB程序支持多國語言的切換

編輯:VB綜合教程
以前做過一個vb的小項目,客戶需要軟件同時能夠支持中文和英文,為此寫了一個自動語言切換的模塊來用,不敢獨享,拿來給大家參考一下,如果你有什麼改進也可以寫信給我。。mailto:[email protected]

  模塊MdlLanMgr.bas:

  AttributeVB_Name="ModuleLanMgr"

  OptionExplicit

  PrivateDeclareFunctionGetPrivateProfileString&Lib"kernel32"Alias"GetPrivateProfileStringA"(ByVallpApplicationNameAsString,ByVallpKeyNameAsString,ByVallpDefaultAsString,ByVallpReturnedStringAsString,ByValnSizeAsLong,ByVallpFileNameAsString)

  PrivateLanguageFileNameAsString

  '選擇語言

  PublicSubSelectLanguage(LanNameAsString)

  OnErrorResumeNext

  

  SelectCaseLanName'根據用戶選擇的語言的名稱,分別讀取不同的語言文件

  Case"English":

  LanguageFileName=AddSplash(App.Path)&"English.Lan"

  Case"Chinese(Simplify)":

  LanguageFileName=AddSplash(App.Path)&"ChineseS.Lan"

  Case"Chinese(Traditional)":

  LanguageFileName=AddSplash(App.Path)&"ChineseT.Lan"

  CaseElse:

  LanguageFileName=""

  EndSelect

  EndSub

  '翻譯文字

  PublicFunctionTranslateStr(sSectionAsString,sKeyAsString,sDefValAsString)AsString

  DimsValueAsString*128

  DimNAsLong

  

  OnErrorResumeNext

  

  TranslateStr=sDefVal

  IfNotFileExists(LanguageFileName)Then

  ExitFunction

  EndIf

  N=GetPrivateProfileString(sSection,sKey,sDefVal,sValue,127,LanguageFileName)

  IfN>0Then

  TranslateStr=Left(sValue,N)

  EndIf

  EndFunction

  '自動轉換Form上的一些基本控件(也可自行擴展,目前支持CommandButton,Label,OptionButton,CheckButton)

  PublicSubTranslateForm(FrmAsForm)

  DimIAsLong

  

  OnErrorResumeNext

  

  Frm.Caption=TranslateStr(Frm.Name,"Caption",Frm.Caption)

  ForI=0ToFrm.Controls.Count-1

  If(TypeOfFrm.Controls(I)IsCommandButton)Or(TypeOfFrm.Controls(I)IsLabel)_

  Or(TypeOfFrm.Controls(I)IsOptionButton)Or(TypeOfFrm.Controls(I)IsCheckBox)Then

  Frm.Controls(I).Caption=TranslateStr(Frm.Name,Frm.Controls(I).Name,Frm.Controls(I).Caption)

  EndIf

  NextI

  EndSub

->

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved