سلام
من یک پروژه اکسس دارم که در اون لازمه زبان کامپیوتر بطور خودکار به فارسی و یا انگلیسی تغییر کنه ، لطفا من رو راهنمایی کنین.
مرسی
Printable View
سلام
من یک پروژه اکسس دارم که در اون لازمه زبان کامپیوتر بطور خودکار به فارسی و یا انگلیسی تغییر کنه ، لطفا من رو راهنمایی کنین.
مرسی
گزینه Keyboard Language زبانه Format رو باز کن زبانی رو که میخوای انتخاب کن
قبلش Text box رو که میخوای زبانشو تغییر بدی انتخاب کن
لطفا کد مربوط به تغییر زبان کیبورد را دارید بگذارید مثلا با زدن یک کلید زبان کیبورد تغییر کند. با تشکر
یعنی کسی کد تغییر زبان کیبورد رو نداره ........کمک کنین........
به نام خدا
با سلام. از اين كد مي توانيد استفاده كنيد و آن را در رويداد open فرم مورد نظر صدا بزنيد.
به اين صورت
Private Sub Form_Load()
SetKbLayout
End Sub
Public Const KLF_ACTIVATE = &H1
Public Const LANG_EN_US As String = "00000409" 'English
Public Const LANG_Ar_As As String = "00000401" 'Arabic
Public Const LANG_FARSI As String = "00000429" 'Farsi
Public Declare Function GetKeyboardLayoutName Lib "user32" Alias "GetKeyboardLayoutNameA" (ByVal pwszKLID As String) As Long
Public Declare Function LoadKeyboardLayout Lib "user32" Alias "LoadKeyboardLayoutA" (ByVal pwszKLID As String, ByVal flags As Long) As Long
Public Function SetKbLayout(Optional strId As String, VER_OS as String) As Boolean
Dim strLayoutId As String
'ÊÚííä ÓíÓÊã ÚÇãá
If strId <> "" Then GoTo 10
strOs = VER_OS
If strOs = "Windows ME" Or strOs = "Windows 98" Then
strId = LANG_Ar_As
ElseIf strOs = "Windows XP" Or strOs = "Windows 2K" Then
strId = LANG_FARSI
End If
10:
strLayoutId = String(KL_NAMELENGTH, 0)
'ÒÈÇä ÍÇÑí ÕÝÍå ßáíÏ íÓÊ
GetKeyboardLayoutName strLayoutId
If (strLayoutId = (strId & Chr(0))) Then
SetKbLayout = True
Else
strLayoutId = String(KL_NAMELENGTH, 0)
strLayoutId = LoadKeyboardLayout((strId & Chr(0)), KLF_ACTIVATE)
If IsNull(strLayoutId) Then
SetKbLayout = False
Else
strLayoutId = String(KL_NAMELENGTH, 0)
GetKeyboardLayoutName strLayoutId
If strLayoutId = (strId & Chr(0)) Then
SetKbLayout = True
Else
SetKbLayout = False
End If
End If
End If
End Function
اگر منظور شما تغيير زبان با استفاده كدهاي vba بدون استفاده از توابع API هست ميتونيد از اين كد ساده در رويداد ON CLICKيك دكمه استفاده كنيد:
Private Sub Command1_Click()كه در واقع كليد ALT +SHIFT رو ارسال ميكنه.
SendKeys "%" & "+"
End Sub
.............................
موفق باشيد