olha eduardo.. tenta fazer assim:
no Declarations coloca isso:
Const Marcado = "þ"
Const Desmarcado = "q"
depois coloca uma flexgrid no form e copia isso:
Private Sub MostrarCheckbox(iRow As Integer, iCol As Integer)
With msFlexGrid1
If .TextMatrix(iRow, 0) = Desmarcado Then
.TextMatrix(iRow, 0) = Marcado
Else
.TextMatrix(iRow, 0) = Desmarcado
End If
End With
End Sub
Private Sub msFlexGrid1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Or KeyAscii = 32 Then 'Enter ou Barra de Espaço
With Grade
Call MostrarCheckbox(.Row, .Col)
End With
End If
End Sub
Private Sub msFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
If Button = 1 Then
With msFlexGrid1
If .MouseRow <> 0 And .MouseCol = 0 Then
Call MostrarCheckbox(.MouseRow, .MouseCol)
End If
End With
End If
End Sub
Private Sub Form_Load()
With msFlexGrid1
For y = 1 To .Rows - 1
For x = 0 To 0
.Row = y
.Col = x
.CellFontName = "Wingdings"
.CellFontSize = 14
.CellAlignment = flexAlignCenterCenter
.Text = Desmarcado
Next x
Next y
End With
End Sub
na verdade, o que acontece é que a fonte wingdings simula uma caixa de seleção marcada e desmarcada, mas o efeito final fica identico a uma checkbox.. é uma forma de se fazer o que vc quer sem muita complicação...
qualquer dúvida posta aí pra galera..
abraços,
Luciano