(14-05-2021, 18:19)gambafeliz escribió: Me puede valer, aunque tengo que seguir pensando como hacerlo más simple. Es que sino tengo que implementarlo en todos los Grid, aunque ya se que se puede globalizar con un módulo, por ejemplo.
Muchísimas gracias de verdad. Aunque se me ha metido en la cocorota que tengo que buscar algo mas mágico, por favor, esto no es cosa tuya ya sabes que es más que suficiente lo que me has sugerido, soy yo que soy muy cabezón.
De todas formas, y sólo por el placer de volver a menear los dedos oxidados, te adjunto un ejemplo de cómo queda un control propio que te hace el trabajo de forma transparente.Sólo tienes que añadir la clase "MiGrid" al proyecto y voilá.
Ha sido divertido.
Saludos
El código es muy simple:
Código:
' Gambas class file
Export
Inherits GridView
Public Const _Properties As String = "*"
Public Const _Group As String = "View"
Public Const _Similar As String = "GridView"
Public Const _drawWith As String = "GridView"
Private $obs As Observer
Private $oldRow As Integer
Private $oldColumn As Integer
Public Sub _new()
$obs = New Observer(Me) As "grid"
End
Public Sub grid_Change()
Me[$oldrow, $oldColumn].Background = Color.TextBackground
Me[$oldrow, $oldColumn].Foreground = Color.Foreground
Me[Me.row, Me.column].Background = Color.SelectedBackground
Me[Me.row, Me.column].Foreground = Color.SelectedForeground
$oldcolumn = Me.Column
$oldrow = Me.Row
End
Se pueden hacer multitud de cosas con éste sistema. Si te interesa puedo subir alguna clase como ésta que hace más cosas y, por tanto, es más compleja.
¿Alguien me puede explicar cómo poner código en colorines? El botón ese de la gamba cocida no me funciona, al parecer.