Shell   28-12-2022, 00:37
#1
Buenas!.

TextBox soporta el método Insert para escribir en el lugar del cursor del ratón.
Mi idea era cambiar a mayúscula o convertir a mayúsculas lo que se escriba, en este caso solo un carácter y parar el evento.
Esto lo hago en un TextBox.

Código:
Public Sub Form_Open()

  With TextBox1
    .Font = Font["Mono noto,Bold, 24"]
  End With

End

Public Sub TextBox1_KeyPress()

  TextBox1.Insert(Upper(Key.Text))
  Stop Event

End

Pero en un TableView no veo la forma adecuada.

Código:
Public Sub Form_Open()

  With TableView1
    .Rows.Count = 15
    .Columns.Count = 1
    .Font = Font["Mono noto, Bold, 24"]
  End With

End


Public Sub TableView1_Click()

  TableView1.Edit

End


Public Sub TableView1_Save(Row As Integer, Column As Integer, Value As String)

  If Len(TableView1.Current.Text) >= 1 Then
    Stop Event
  Else
    TableView1[Row, Column].Text = Upper(Value)
  Endif


End

El texto continua escribiéndose y al pulsar intro se convierte a mayúscula.
Probablemente diréis que por que no uso el evento KeyPress, no me soluciona mucho.
Algo así tampoco muestra la letra pulsada en la celda.

Código:
Public Sub TableView1_KeyPress()

  Message.Info("La tecla pulsada es: " & Key.Text)

End

En la ayuda de Gambas dice que soporta Insert, pero no parece el mismo comportamiento que TextBox.
 
Cita: 
This event is raised when the user requested an insertion by hitting the RETURN key inside the bottom-right cell.

Saludos
Última modificación: 28-12-2022, 00:44 por Shell.

"El conocimiento es la mejor inversión que se puede hacer" - Abraham Lincoln
  
Usuarios navegando en este tema: 1 invitado(s)
Powered By MyBB, © 2002-2025 MyBB Group.
Made with by Curves UI.