Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB .NET > замена символа в textbox


Автор: Petro123 10.9.2009, 13:31
Вопрос по VB.Net.
Как в TextBox- е сделать, чтобы при нажатии одного символа на клавиатуре печатался другой

Например, нажимаю клавишу "0" печатается символ "1"
e.keycode readonly

Автор: diadiavova 10.9.2009, 13:41
Код

    Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
        If e.KeyChar = "0"c Then
            e.KeyChar = "1"c
        End If
    End Sub

Автор: Akina 10.9.2009, 13:45
Типа
Код

Private Sub textBox1_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles textBox1.KeyPress
If e.KeyChar = Microsoft.VisualBasic.ChrW(Keys.D0) Then
    e.KeyChar = Microsoft.VisualBasic.ChrW(Keys.D1)
ElseIf  e.KeyChar = Microsoft.VisualBasic.ChrW(Keys.NumPad0) Then
    e.KeyChar = Microsoft.VisualBasic.ChrW(Keys.NumPad1)
End If
End Sub
?

Автор: Petro123 10.9.2009, 13:48
Хм, я так пробовал
ругается что keychar readonly

Автор: Petro123 10.9.2009, 14:04
Цитата

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
        If Kcd = 106 Then
            TextBox1.Text = Microsoft.VisualBasic.Mid(TextBox1.Text, 1, Len(TextBox1.Text) - 1) & "."
            TextBox1.SelectionStart = Len(TextBox1.Text)
        End If
    End Sub

    Private Sub TextBox1_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
        Kcd = e.KeyCode
    End Sub

только так получается,
но по идее должен ваш вариант катить,...

Автор: Pilger 10.9.2009, 21:38
Он катит... тебе надо проверять символ, который вводится в поле. Например если вводится "f", то вводить что то другое. Посмотри, что выдает KeyChar при нажатии на нужную тебе кнопку.

Автор: diadiavova 10.9.2009, 21:59
Цитата(Petro123 @  10.9.2009,  14:48 Найти цитируемый пост)
Хм, я так пробовал
ругается что keychar readonly

Я свой код тоже пробовал и всё работает. А кичар не ридонли, посмотри документацию по этому свойству.
http://msdn.microsoft.com/ru-ru/library/system.windows.forms.keypresseventargs.keychar.aspx

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)