PDA

Ver la Versión Completa : Posicionar el cursor solo en celdas editables del TDBgrid


TelloClos
02-07-2003, 17:27:10
hola!

quisiera saber si existe una forma de lograr que el cursor que recorre cada celda dentro de un grid, sólo se posicione sobre las celdas que yo he habilitado como editables.

en mi caso tengo una grid con 10 celdas de las cuales las ocho primeras estas definidas como solo lectura, y las dos ultimas como editables.

de ante mano muchas Gracias!

__cadetill
02-07-2003, 17:45:48
En principio, si te mueves con la tabulacion, en las columnas marcadas como ReadOnly, no va ha hacer parada.

TelloClos
02-07-2003, 17:54:37
si , lo se ,pero es que a los usuarios que quiero enfocar esat aplicación, son más que básicos( y quejones)
asi que para mi seria ideal que sólo se pudieran posicionar con el curos sobre estas ultimas dos columnas.

otra cosilla como yo puedo saber sobre que celda estoy actuando?( a nivel de codigo)

yo pensaba que era con TDBGrid.Columns[i].showing, pero no pasa nada.

__cadetill
02-07-2003, 17:57:36
Posteado originalmente por TelloClos
otra cosilla como yo puedo saber sobre que celda estoy actuando?( a nivel de codigo)


Puedes mirar de saberlo mediante el campo de la tabla, es decir

DBGrid1.Columns[x].FieldName

Espero te sirva

TelloClos
02-07-2003, 18:10:39
pero...
con DBGrid1.Columns[x].FieldName

no podria saber por ejemplo utilizando el evento keypress de la
grid en que celda lo hice.

por ejemplo:

si (hice keypress en esta celda) entonces
...........

TelloClos
02-07-2003, 23:41:01
bueno ya viendo de que eso de sólo posicionar el cursor en las celdas editables, al parecer no es posible en el objeto Grid

alguien me podria ayudar con mi planteamiento con respecto a como, al momento de actuar sobre alguna celda, saber sobre que
celda especificamente estoy actuando?

me es precindible saber como hacer esto para poder realizar las rutinas que pretendo incorporar sobre este grid

cualquier ayuda sera bienvenida, si no me he explicado bien por favor haganmelo saber

andres1569
02-07-2003, 23:51:39
Hola:

Imagino que cuando dices sobre qué celda, no te importa demasiado en qué número de fila y columna sino, como parece que estás en un DBGrid, el saber sobre qué campo. Eso lo puedes saber en cualquier momento mediante la propiedad SelectedField, que devuelve un objeto del tipo TField.

with DBGrid1.SelectedField do
begin
...
end;

Si lo que quieres saber es el número de Col y de Row, sé que se ha escrito algún hilo en las últimas semanas al respecto, puedes usar la opción de Buscar en los foros, estas propiedades son protegidas y hay que usar un truco para acceder a ellas. Sé que el tema se ha tratado recientemente.

TelloClos
03-07-2003, 00:34:09
gracias por la ayuda e información, necesitaba saber como manejar por columna, busque como me dijiste y encontre

por si alguien si le sirve a alguien lo encontre con el titulo:

"DBGrid me borra una celda"