COMO SABER POSICAO DO CURSOR EM TEXTBOX
Olá boa noite.
Estou com um problema em saber em que posição no texto se encontra o cursor dentro de uma TextBox.
Ou seja ; Tenho uma TextBox com o seguinte Texto : Me.TextBox1.text=[Ô]VbMania Auxilia-nos Bastante.[Ô] e gostaria de saber (se é possivel) encontrar a posição onde se encontra o cursor.
Já tentei com : Me.TextBox1.SelectionStart = Me.TextBox1.TextLength mas não dá para devolver onde está o cursor.
Alguém sabe como o posso fazer, ou já fez?
Estou com um problema em saber em que posição no texto se encontra o cursor dentro de uma TextBox.
Ou seja ; Tenho uma TextBox com o seguinte Texto : Me.TextBox1.text=[Ô]VbMania Auxilia-nos Bastante.[Ô] e gostaria de saber (se é possivel) encontrar a posição onde se encontra o cursor.
Já tentei com : Me.TextBox1.SelectionStart = Me.TextBox1.TextLength mas não dá para devolver onde está o cursor.
Alguém sabe como o posso fazer, ou já fez?
Coloque um TIMER Verificando...
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Label1.Text = TextBox1.SelectionStart
Label2.Text = TextBox1.Text.Substring(TextBox1.SelectionStart, 1)
End Sub
Olá Fernando.
O problema que me deparei foi ao tentar usar o comando:
O problema que me deparei foi ao tentar usar o comando:
Me.TextBox1.Text = StrConv(Me.TextBox1.Text, VbStrConv.ProperCase)
em uma caixa de texto, o cursor setava para o inicio do texto, daà precisar memorizar qual a última posição do cursor , para repôr a respectiva posição.
Fiz assim :
Public Class Form1
Private Sub TextBox1_MouseClick(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles TextBox1.MouseClick
Dim Posicao As Long = TextBox1.SelectionStart
Label1.Text = Posicao
If TextBox1.SelectionStart < TextBox1.TextLength Then
Label2.Text = TextBox1.Text.Substring(TextBox1.SelectionStart, 1)
End If
Me.TextBox1.Text = StrConv(Me.TextBox1.Text, VbStrConv.ProperCase)
Me.TextBox1.SelectionStart = Posicao
End Sub
Private Sub TextBox1_TextChanged(sender As System.Object, e As System.EventArgs) Handles TextBox1.TextChanged
Dim Posicao As Long = TextBox1.SelectionStart
Posicao = TextBox1.SelectionStart
Label1.Text = Posicao
If TextBox1.SelectionStart < TextBox1.TextLength Then
Label2.Text = TextBox1.Text.Substring(TextBox1.SelectionStart, 1)
End If
Me.TextBox1.Text = StrConv(Me.TextBox1.Text, VbStrConv.ProperCase)
Me.TextBox1.SelectionStart = Posicao
End Sub
End Class
Tópico encerrado , respostas não são mais permitidas