泰盧固語翻譯  LabelCmd1=Start Play
'翻譯文字
  Case "Chinese(Traditional)":
ErrFun:

  [FormMain]
  Close #1
  
 Language = "English"

 End If
  Cmd3=Del Program

  模組 MdlLanMgr.bas :
Public Sub TranslateForm(Frm As Form)
 Frm.Caption = TranslateStr(Frm.Name翻譯社 "Caption", Frm.Caption)

 On Error Resume Next
End Function
  挪用很簡單,在作為程式主窗口的Form中這麼寫:
 N = GetPrivateProfileString(sSection, sKey翻譯社 sDefVal, sValue, 127, LanguageFileName)
  LabelCmd5=Exit
 Dim sValue As String * 128


   LanguageFileName = AddSplash(App.Path) & "ChineseT.Lan"
  Case Else:
   LanguageFileName = AddSplash(App.Path) & "English.Lan"
  Caption=PCTV Player
 Dim N As Long
Private LanguageFileName As String
 If N > 0 Then

  Or (TypeOf Frm.Controls(I) Is OptionButton) Or (TypeOf Frm.Controls(I) Is CheckBox) Then
 End Select

 SelectLanguage (Language) '設定全局變量,指定利用的語言
  LabelCmd4=Help
 On Error Resume Next
 If FileExists(AddSplash(App.Path) & "Sys.Ini") Then '從程式的設置裝備擺設文件中讀取前次設定的說話檔案名稱稱
'選擇語言
  [FormEdit]
  ListView.Title4=Title

'自動轉換Form上的一些基本控件(也可自行擴展,目前支援CommandButton翻譯社Label,OptionButton,CheckButton)
  If (TypeOf Frm.Controls(I) Is CommandButton) Or (TypeOf Frm.Controls(I) Is Label) _
Attribute VB_Name = "ModuleLanMgr"
  TranslateStr = Left(sValue, N)
  Cmd1=Add Program
 TranslateStr = sDefVal
  LabelCmd6=Exit && Shut down computer
Public Sub SelectLanguage(LanName As String)
End Sub

 Resume Next
  Case "Chinese(Simplify)":
 End If
 On Error Resume Next
 If Not FileExists(LanguageFileName) Then
 On Error GoTo ErrFun
  Cmd5=Move Down
Option Explicit
  End If
  別的,對照麻煩的是若是在同時有幾個Form顯示著的環境下要切換介面說話,那麼需要手工分別對各個窗口調用TranslateForm()函數,若是你想改良,那麼可以再寫個進程遍歷所有窗口並調用該函數,這個就留給你來做吧。

  由於VB語言(這裡指VB6.0及以前版本,VB.NET屬於另一種概念了)仍是挺弱的,所以也只能遷就這做到這個水平了,若是要增添一些其它控件或者其它屬性的自動文字轉換支援,那麼翻譯公司必須自行擴展TranslateForm()函數。(不像Delphi,可使用RTTI來搞定一切)

之前做過一個vb的小項目,用戶需要軟體同時可以或許支援中文和英文,為此寫了一個自動語言切換的模組來用,不敢獨享,拿來給大家參考一下翻譯
  ListView.Title2=Time
   Frm.Controls(I).Caption = TranslateStr(Frm.Name, Frm.Controls(I).Name, Frm.Controls(I).Caption)

  Caption=Edit PlayList...
  LabelCmd3=Options...
  Case "English":

  其它Form中都用類似的寫法,在FormLoad中挪用TranslateForm(Me)的方式將Form上的Button,Label等切換說話文字。
   LanguageFileName = ""
  
 Select Case LanName '按照用戶選擇的說話的名稱,劃分讀取分歧的說話文件
  LabelCmd2=Edit Play List
  
  Open AddSplash(App.Path) & "Sys.Ini" For Input As #1
  Exit Function
  Cmd2=Edit Program
End Sub
  Cmd6=Quit Edit

End Sub
   LanguageFileName = AddSplash(App.Path) & "ChineseS.Lan"
  Input #1翻譯社 Language

 End If
  Cmd4=Move Up
  ListView.Title3=Type

 For I = 0 To Frm.Controls.Count - 1
  
  
 Next I
 Private Declare Function GetPrivateProfileString& Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String翻譯社 ByVal lpKeyName As String, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long翻譯社 ByVal lpFileName As String)

Private Sub Form_Load()
  最後,用到的說話文件的格局像如許:
Public Function TranslateStr(sSection As String, sKey As String, sDefVal As String) As String
 TranslateForm Me '自動轉換介面文字
  


  ListView.Title1=ID
 Dim I As Long


以下內文出自: http://mypaper.pchome.com.tw/meteor0721/post/1325789038有關各國語文翻譯公證的問題歡迎諮詢天成翻譯公司02-77260931

創作者介紹
創作者 這裡是和天成翻譯有關的地盤,歡迎到訪我的BLOG! 的頭像
danielmk57j5

這裡是和天成翻譯有關的地盤,歡迎到訪我的BLOG!

danielmk57j5 發表在 痞客邦 留言(0) 人氣( 4 )

Blog Stats
⚠️

成人內容提醒

本部落格內容僅限年滿十八歲者瀏覽。
若您未滿十八歲,請立即離開。

已滿十八歲者,亦請勿將內容提供給未成年人士。