سلام
من مي خوام زماني كه كسي در textbox چيزي مي نويسه فقط بتونه فارسي بنويسه
فكر مي كنم بايد كد جاوا داشته باشه
Printable View
سلام
من مي خوام زماني كه كسي در textbox چيزي مي نويسه فقط بتونه فارسي بنويسه
فكر مي كنم بايد كد جاوا داشته باشه
اصلا این طوری که شما فکر میکنید نیست شما باید کد اسکی کلید فشار داده شده رو بگیرید و طبق اون چیزی که فشار داده کاراکتر رو جایگزین کنید
به زودی یه نمونه براتون میزارم همه چیز براتون روشن میشه
به کد زیر دقت کنید هرگاه کاراکترهای انگلیسی وارد بشن با معادل فارسی جایگزین میشن.توجه داشته باشید که این کدها در رویداد KeyPress مربوط به TextBox قرار دارن
کد:PrivateSub TextBox1_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
Dim keyascii AsInteger = Asc(LCase(e.KeyChar))
SelectCase keyascii
Case Asc("h")
e.Handled = True
TextBox1.Text += ChrW(1575)
Case Asc("f")
e.Handled = True
TextBox1.Text += ChrW(1576)
Case Asc("`")
e.Handled = True
TextBox1.Text += ChrW(1662)
Case Asc("j")
e.Handled = True
TextBox1.Text += ChrW(1578)
Case Asc("e")
e.Handled = True
TextBox1.Text += ChrW(1579)
Case Asc("[")
e.Handled = True
TextBox1.Text += ChrW(1580)
Case Asc("]")
e.Handled = True
TextBox1.Text += ChrW(1670)
Case Asc("p")
e.Handled = True
TextBox1.Text += ChrW(1581)
Case Asc("o")
e.Handled = True
TextBox1.Text += ChrW(1582)
Case Asc("n")
e.Handled = True
TextBox1.Text += ChrW(1583)
Case Asc("b")
e.Handled = True
TextBox1.Text += ChrW(1584)
Case Asc("v")
e.Handled = True
TextBox1.Text += ChrW(1585)
Case Asc("c")
e.Handled = True
TextBox1.Text += ChrW(1586)
Case Asc("\")
e.Handled = True
TextBox1.Text += ChrW(1688)
Case Asc("s")
e.Handled = True
TextBox1.Text += ChrW(1587)
Case Asc("a")
e.Handled = True
TextBox1.Text += ChrW(1588)
Case Asc("w")
e.Handled = True
TextBox1.Text += ChrW(1589)
Case Asc("q")
e.Handled = True
TextBox1.Text += ChrW(1590)
Case Asc("x")
e.Handled = True
TextBox1.Text += ChrW(1591)
Case Asc("z")
e.Handled = True
TextBox1.Text += ChrW(1592)
Case Asc("u")
e.Handled = True
TextBox1.Text += ChrW(1593)
Case Asc("y")
e.Handled = True
TextBox1.Text += ChrW(1594)
Case Asc("t")
e.Handled = True
TextBox1.Text += ChrW(1601)
Case Asc("r")
e.Handled = True
TextBox1.Text += ChrW(1602)
Case Asc(";")
e.Handled = True
TextBox1.Text += ChrW(1603)
Case Asc("'")
e.Handled = True
TextBox1.Text += ChrW(1711)
Case Asc("g")
e.Handled = True
TextBox1.Text += ChrW(1604)
Case Asc("l")
e.Handled = True
TextBox1.Text += ChrW(1605)
Case Asc("k")
e.Handled = True
TextBox1.Text += ChrW(1606)
Case Asc(",")
e.Handled = True
TextBox1.Text += ChrW(1608)
Case Asc("i")
e.Handled = True
TextBox1.Text += ChrW(1607)
Case Asc("d")
e.Handled = True
TextBox1.Text += ChrW(1610)
Case Asc("m")
e.Handled = True
TextBox1.Text += ChrW(1574)
Case Asc("0")
e.Handled = True
TextBox1.Text += ChrW(1776)
Case Asc("1")
e.Handled = True
TextBox1.Text += ChrW(1777)
Case Asc("2")
e.Handled = True
TextBox1.Text += ChrW(1778)
Case Asc("3")
e.Handled = True
TextBox1.Text += ChrW(1779)
Case Asc("4")
e.Handled = True
TextBox1.Text += ChrW(1780)
Case Asc("5")
e.Handled = True
TextBox1.Text += ChrW(1781)
Case Asc("6")
e.Handled = True
TextBox1.Text += ChrW(1782)
Case Asc("7")
e.Handled = True
TextBox1.Text += ChrW(1783)
Case Asc("8")
e.Handled = True
TextBox1.Text += ChrW(1784)
Case Asc("9")
e.Handled = True
TextBox1.Text += ChrW(1785)
EndSelect
EndSub
اوههوم !!
[PHP]
Public Class Form1
Private 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
Dim a as Integer
a = LoadKeyboardLayout("00000429",1)
End Sub
End Class
[/PHP]
دوست عزیز بهتره یکبار دیگه به عنوان سئوال توجه کنیدنقل قول:
اوههوم !!
PHP کد:
Public Class Form1
Private 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
Dim a as Integer
a = LoadKeyboardLayout("00000429",1)
End Sub
End Class
__________________
این سورسی که شما دادید فقط مد نوشتن ویندوز رو از انگلیسی به فارسی تبدیل میکنه و کاربر میتونه دوباره اونو به انگلیسی تغییر بده و انگلیسی بنویسهنقل قول:
من مي خوام زماني كه كسي در textbox چيزي مي نويسه فقط بتونه فارسي بنويسه
ولی سورسی که من گذاشتم با اون اگر حالت ویندوز چه در حالت فارسی باشه چه انگلیسی بازم فقط فارسی مینویسه
خیلی ممنون از تمام دوستان که به من کمک کردن
ببخشید این کدی که شما گذاشتید برای ویندوز اما من برای وب می خوام میشه کمکم کنید؟