FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Hola
Mira con este ejemplo tomado desde el "Help de delphi" te va a quedar mas claro el problema. Solo Modifique la asignacion del "DisplayLabel" para graficar mejor la situacion: El ejemplo siguiente requiere de una Grilla, un DataSource y un Table. con las siguientes asignaciones en la tabla: Table1.DatabaseName := 'DBDEMOS'; Table1.TableName := 'biofile.db'; ... Entonces cada vez que pinches una celdilla o te muevas con las teclas de flecha hacia la isquierda o derecha, en la cabecera de la columna de la celdilla pinchada aparecera un asterisco y los primeros 4 caracteres del campo 'Category'. No ocurrira lo mismo si te mueves con las teclas de flecha hacia arriba o hacia abajo. A pesar de que el campo 'Category' ya tiene otro contenido. Espero haberme explicado mejor... Saludos Jose Miguel B. var Form1: TForm1; StarIsThere: Boolean; implementation {$R *.dfm} procedure TForm1.DBGrid1ColEnter(Sender: TObject); begin with DBGrid1.SelectedField do DisplayLabel := '* ' + copy( Table1.FieldByName('Category').AsString,1,4)+ '* '+ DisplayLabel; StarIsThere := True; end; procedure TForm1.DBGrid1ColExit(Sender: TObject); var TheLabel: string; begin if StarIsThere then begin with DBGrid1.SelectedField do begin TheLabel := DisplayLabel; Delete(TheLabel, 1, 8); DisplayLabel := TheLabel; end; end; end; |
#2
|
||||
|
||||
Pablo Carlos te lo dijo desde un principio: usa el evento AfterScroll del dataset. El evento OnColEnter sólo se activará cuando entres a la columna y no si te mueves sobre ella. Es decir, si te desplazas verticalmente, el evento no se genera porque no has entrado a una nueva columna. Sin embargo tal desplazamiento vertical sí genera un cambio de fila y por tanto el evento AfterScroll.
// Saludos |
#3
|
|||
|
|||
Que facil era, ... gracias por su ayuda. Sirvio de maravilla el AfterScroll.
Dentro del procedimiento AfterScroll hice el llamado a onColEnter y funciono de maravillas. Una vez mas gracias. Saludos Jose Miguel Bakulic V. |
|
|
|