نمايش وضعيت صفحه كليد در VB

سلام
كسي تابعي رو مي شناسه كه وضعيت صفحه كليد رو در VB 6.0 نشان بده(منظور زبان صفحه كليد)
ممنون 8)
 
نشون بده ؟
من مي تونم بگم از فارسي بكن انگليس يا بلعكس
مثلا با زدن اين دكمه به اون يكي بره !
اما اينكه تشخيص بده رو نمي دونم !
 
اگه شما بخواید صفحه کلیدو به زبان خاصی در بیارید باید از تابع API با نام LoadKeyboardLayout استفاده کنید
اينم مثال vb.net ولي نمي دونم تو vb 6 كار ميكنه يا نه
کد:
Option Explicit

Private Const KLF_ACTIVATE = &H1
Private Const LANG_FA_IR As String = "00000429"  'FA_IR

Private Declare Function LoadKeyboardLayout Lib "user32" Alias "LoadKeyboardLayoutA" (ByVal pwszKLID As String, ByVal flags As Long) As Long

Private Sub Command1_Click()
    LoadKeyboardLayout LANG_FA_IR & Chr(0), KLF_ACTIVATE
End Sub
 

hamed_h

Member
مي تونين از api زير استفاده كنين
اين كد توي vb هست .
توي vb.net هم يكم با اين فرق مي كنه

private declare function GetKeyboardLayoutName Lib "User32" Alias "getKeyboardLayoutNameA" ( byval pwszKLID as string) as Long)

pwsxKLID نوع رشته هست كه داراي حداكثر طول 9 هست .
تابع يه مقداري رو بر مي گردونه
اگه مقدار بازگشتي H00000429 باشه يني صفحه كليد فارسي هست . اما اگه آ00000409
 

hamed_h

Member
نافص موند .شرمنده .
اگه H00000409 برگردونه انگليسي هست .

البته توي win NT
اما اگه win 98 باشه مقادير زير رو بر مي گردونه .
فارسي H4010401
انگليسي H4090409
اگه باز مشكلي بود بگين تا واستون برنامشو بنويسم و بزارم اينجا .
 

جدیدترین ارسال ها

بالا