PDA

View Full Version : بچه ها چگونه میتوانم در ویندوز Xp تغییر زبان دهم ........



zehs_sha
یک شنبه 19 مرداد 1382, 17:26 عصر
چگونه می توانم قبل از ورود به طور خودکار زبان برنامه را تغییر دهم و قبل از ورود به TextBox در Vb.net در ویندوز Xp زبان را فارسی کنم . 8)

بمب منطقی
یک شنبه 19 مرداد 1382, 19:14 عصر
سلام:
اگه ویندوزت زبان فارسی رو پشتیبانی می کنه که هیچ , خیلی راحت رو آیکون Language bar رو Task bar ویندوزت کلیک کن و زبان فارسی رو انتخاب کن :P . اگرم پشتیبانی نمیکنه برو رو همون آیکون کلیک راست کن و بعد از منوی باز شده گزینه Settings رو انتخاب کن. بعد از اون تو پنجره باز شده رو دکمه Add کلیک کن.حالا از پنجره حاضر میتونی از منوی باز شونده input language زبان دلخواهت رو انتخاب کنی . البته باید بگم که باید CD ویندوز XP رو داشته باشی.
آخرشم, OK , OK بزنو بیا بیرون.

همین و بس. :P

Abbas Arizi
یک شنبه 19 مرداد 1382, 20:24 عصر
اگه منظورت اینه که Keyboard رو از طریق برنامه نویسی تغییر بدی باید از همون API معروف LoadKeyboardLayout استفاده کنی. استفاده اش هم خیلی با VB خودمون! فرقی نداره.

Public Class Form1
Inherits System.Windows.Forms.Form

#Region " Windows Form Designer generated code "

Public Sub New()
MyBase.New()

'This call is required by the Windows Form Designer.
InitializeComponent()

'Add any initialization after the InitializeComponent() call

End Sub

'Form overrides dispose to clean up the component list.
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub

'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer

'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
'
'Form1
'
Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
Me.ClientSize = New System.Drawing.Size(376, 266)
Me.Name = "Form1"
Me.Text = "Form1"

End Sub

#End Region
Declare Function LoadKeyboardLayout Lib "user32" Alias "LoadKeyboardLayoutA" (ByVal pwszKLID As String, ByVal flags As Integer) As Integer

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
LoadKeyboardLayout("00000429", 1)
End Sub
End Class

روح اله معینی زاده
سه شنبه 18 شهریور 1382, 09:47 صبح
:lol: با سلام

نمی دونم تو کجای این دریای اینترنت غرق شده بودم که کد زیر رو دیدم و سریع اونو توی سیستم خودم ذخیره کردم. ببخشید اگه ذکر منبع نکردم. :oops:


Dim farsi As New Globalization.CultureInfo("fa-IR")
Dim x2 As InputLanguage
InputLanguage.CurrentInputLanguage = x2.FromCulture(farsi)


با احترام - خدانگهدار.

M-Gheibi
سه شنبه 18 شهریور 1382, 12:27 عصر
در VB 6 ابتدا این تابع را تعریف کنید :

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

در ویندوز اکس پی و 2000 که فارسی نصب شده باشد :

Dim xx As Long
xx = LoadKeyboardLayout("00000429", 1)

در ویندوز پارسا 99 و امثال آن :

Dim xx As Long
xx = LoadKeyboardLayout("00000401", 1)


در VB.NET ابتدا این تابع را تعریف کنید :

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

در ویندوز اکس پی و 2000 :

Dim a as Integer
a = LoadKeyboardLayout("00000429", 1)


منبع : http://www.hamedbanaei.com/articles/loadkeyboard.asp

8) :wink:

Fatemeh_2005
جمعه 26 خرداد 1385, 15:20 عصر
سلام
من می خواهم در #c از این کد استفاده کنم اما در کد زیر fromculture را نمی شناسد
Dim farsi As New Globalization.CultureInfo("fa-IR")
Dim x2 As InputLanguage
InputLanguage.CurrentInputLanguage = x2.FromCulture(farsi)
می شه یه نفر درمورد کد #c ش توضیح بده

Sharif Lotfi
دوشنبه 12 تیر 1385, 07:36 صبح
Private Sub set_farsi_language()
Dim code_farsi_instaled As Boolean = False
For Each lang1 As InputLanguage In InputLanguage.InstalledInputLanguages
If lang1.LayoutName = "Farsi" Then
code_farsi_instaled = True
Exit For
End If
Next
If code_farsi_instaled = True Then
Dim farsi As New Globalization.CultureInfo("fa-IR")
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(farsi)
End If
End Sub

البته فکر کنم نیاز باشه اینو اول برنامه اضافه کنی :
Imports System.ComponentModel

setak
دوشنبه 12 تیر 1385, 08:53 صبح
در form load event کد زیر را قرار دهید
Dim farsi As New Globalization.CultureInfo("fa-IR")
Dim l As InputLanguage
InputLanguage.CurrentInputLanguage = l.FromCulture(farsi)