Comunidad Gambas-es

Versión completa: Como añadir un checkbox a un TableView
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Buenas!.

No sé si conocen la clase Style, pues con esta se crea el dibujo del checkbox.  Y más.

Style:

This class is a set of properties that return informations about the current widget style.

Clase Style

En el foro GambasOne, encontré la solución y mejoré un poco el código de BruceSteers. How to add checkbox or switch button column to tableview.
Mostrando el ejemplo esto. Lo utilicé para el traductor de los comentarios.

[Imagen: 9giMP8o.png]

Y este es el código:

Código:
Private pOff As New Picture(24, 24)
Private pOn As New Picture(24, 24)

Public Sub Form_Open()
 
  Me.Title = "CheckBox en TableView"
  Paint.Begin(pOff)
  Style.PaintCheck(0, 0, 24, 24, False)
  Paint.End
 
  Paint.Begin(pon)
  Style.PaintCheck(0, 0, 24, 24, True)
  Paint.End
 
  TableView1.Columns.Count = 1
  TableView1.Columns[0].Title = "Seleccionado"
  TableView1.Columns[0].Alignment = Align.Center
  TableView1.Header = GridView.Both
 
  For c As Integer = 0 To 5
    Inc TableView1.Rows.Count
    TableView1[TableView1.Rows.Max, 0].Picture = pOff
  Next
 
  TableView1.Columns[0].Width = -1
 
End

Public Sub TableView1_Click()
 
  If TableView1.Column = 0 Then    
    TableView1.Current.Picture = IIf(estaseleccionada(TableView1.Current), poff, pOn)
  Endif
 
End

Public Function estaseleccionada(celda As _GridView_Cell) As Boolean  
  Return IIf(celda.Picture = pOn, True, False)  
End

Public Sub btnContar_Click()

  For c As Integer = 0 To TableView1.Rows.Max
    If estaseleccionada(TableView1[c, 0]) Then Print "Fila " & Str(c + 1) & " seleccionada"
  Next

End

Comenten si lo desean sobre la clase Sytle. Toda información es poca.
No sabía que se le podía dar las dimensiones así a un objeto Picture.

Saludos
...sugeriría tambien esta página del Wiki italiano:

   https://www.gambas-it.org/wiki/index.php..._TableView
(26-05-2023, 01:00)vuott escribió: [ -> ]...sugeriría tambien esta página del Wiki italiano:

Grazie mille.
Prego, non c'è di che, illustre Console del popolo romano.
(26-05-2023, 16:35)vuott escribió: [ -> ]Prego, non c'è di che, illustre Console del popolo romano.

Smile