PDA

View Full Version : تغییر زبان سیستم در اجرا



aminie
جمعه 08 بهمن 1389, 06:12 صبح
سلام
اگر بخواهیم وقتی در اجرا می رویم زبان سیستم بطور خودکار فارسی شود تا در کادر متن فارسی بنویسد چه کدی باید بنویسیم و در کدام رویداد؟؟
ممنون

mohsen gh
جمعه 08 بهمن 1389, 10:04 صبح
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(New System.Globalization.CultureInfo("Fa"))
این کد بندازید تو form load فرم مورد نظر...

mialdf
جمعه 08 بهمن 1389, 10:29 صبح
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(New System.Globalization.CultureInfo("Fa"))
این کد بندازید تو form load فرم مورد نظر...

سلام
من این کار رو کردم ولی جواب نداد که!

mohsen gh
جمعه 08 بهمن 1389, 10:40 صبح
دوست من اينو تو فرمي كه اطلاعات رو وارد ميكني ميندازي ؟
من انجام دادم درست كار ميكنه

mialdf
جمعه 08 بهمن 1389, 10:58 صبح
دوست من اينو تو فرمي كه اطلاعات رو وارد ميكني ميندازي ؟
من انجام دادم درست كار ميكنه

بله دوست گرامی
من از vs2010 و win 7 استفاده میکنم.
ولی نمیدونم چرا جواب نمیده

ببینم اولش لازم نیست چیزی import کنیم؟

esrafilhashemi
جمعه 08 بهمن 1389, 12:01 عصر
سلام
اگر بخواهیم وقتی در اجرا می رویم زبان سیستم بطور خودکار فارسی شود تا در کادر متن فارسی بنویسد چه کدی باید بنویسیم و در کدام رویداد؟؟
ممنون




میتونی این کد رو زیر Public بنویسی

Private Declare Function ActivateKeyboardLayout Lib "user32" (ByVal HKL As Long, ByVal flags As Long) As Long

بعد تو قسمت لود فرمت این کد رو بنویسی

Call ActivateKeyboardLayout(1, 1)

موفق باشی

mialdf
جمعه 08 بهمن 1389, 12:45 عصر
میتونی این کد رو زیر Public بنویسی

Private Declare Function ActivateKeyboardLayout Lib "user32" (ByVal HKL As Long, ByVal flags As Long) As Long

بعد تو قسمت لود فرمت این کد رو بنویسی

Call ActivateKeyboardLayout(1, 1)
موفق باشی
دوست گرامی با خطای زیر روبه رو شدم


A call to PInvoke function 'BaranSoft!Selin.Recive::ActivateKeyboardLayout' has unbalanced the stack. This is likely because the managed PInvoke signature does not match the unmanaged target signature. Check that the calling convention and parameters of the PInvoke signature match the target unmanaged signature.

vahab2010
جمعه 08 بهمن 1389, 13:19 عصر
من تو wn7كار نكردم اما تو xp اين دستورات زير جواب ميده
اول اين تابع رو تعريف كن

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

بعد تو لود فرم دستور زير رو بنويس

Dim a As Integer
(a = LoadKeyboardLayout("00000429", 1

ali_najari
جمعه 08 بهمن 1389, 17:26 عصر
دوست عزیز کد دوستمون یکم مشکل داشت من اصلاحش میکنم

من خودم از این روش برای تغییر زبان استفاده میکنم و خطایی ندارم


InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(New System.Globalization.CultureInfo("fa-IR"))

shahab2025
شنبه 09 بهمن 1389, 08:38 صبح
بله دوست گرامی
من از vs2010 و win 7 استفاده میکنم.
ولی نمیدونم چرا جواب نمیده

ببینم اولش لازم نیست چیزی import کنیم؟


سلام
من از ویندوز 7 استفاده میکنم و VS2008
در خطوط اول برنامه ام چنین چیزی دارم که درست کار میکنه
شما هم تست کنید و جواب دهید

'
Dim locInputType As New System.Globalization.CultureInfo("FA-IR")
Application.CurrentInputLanguage = InputLanguage.FromCulture(locInputType)

daeijannapelon
یک شنبه 10 بهمن 1389, 10:39 صبح
Private Sub textbox1_Enter
("Dim ch As New Globalization.CultureInfo("Fa-Ir
( InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(ch
End Sub

mansourii
یک شنبه 10 بهمن 1389, 14:23 عصر
اگه کار نمیکنه ربطی به ویندوز نداره چون برنامه کاربردی و سیستمی نیست!
اگه کار نمیکنه ربطی به Vs نداره چون سورس ها یکی است! ( همه سورس هایی که دوستان دادند باید کار بکند)