Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   StringGrid o Similar (https://www.clubdelphi.com/foros/showthread.php?t=1666)

jfontane 23-06-2003 15:30:29

StringGrid o Similar
 
Hola.El problema que tengo ahora es el siguiente: Tengo un StringGrid y lo que quiero tener es la forma de manejar el foco dentro del mismo (en las distintas celdas). Por ejemplo si estoy en una determinada Celda y aprieto ENTER entonces mando el foco dentro del StringGrid a una celda determinada.

Gracias y saludos.

elpinjum 23-06-2003 15:45:46

Introduciendo en el evento onKeyDown, (o si estas creando el componente sobreescribiendo el procendimiento KeyDown), el siguiente codigo:


If Key=13 then
Begin
StringGrid1.Col:=3;
StringGrid1.Row:=3;
end;

Simplente es usar las propiedades Col y Row del StringGrid, Col te dice la columna Active, y Row la Linea.

jfontane 23-06-2003 16:11:32

Hola, elpinjum. La propiedad Col y Row ya la habia probado pero no me sirvio para poner el foco en una celda ( me pinte en azul la celda). Me parece que a estas propiedades la usaba para preguntar si estaba posicionado en un columna o renglon especifico. No habra otra propiedad?

Saludos y gracias

Lepe 23-06-2003 18:32:46

Hola


La verdad, no sé por qué no te sirvió la propiedad Row y Col. Si pones en una nueva ventana un Stringgrid y colocas dos Tedits y un boton, el siguiente código si que funciona:

Código:

procedure TForm1.Button1Click(Sender: TObject);
begin
stringgrid1.row:= strtoint(edit1.Text );
stringgrid1.col:= strtoint(edit2.Text );
end;

Siempre y cuando pongas valores correctos en los Edits ;)

Además si lleva el foco a la celda que le digas, igual has tocado algunas propiedades en tu StringGrid y por eso no te pinta el foco, nu sé.

elpinjum 24-06-2003 08:46:02

Las propiedades Col y Row si que te ponen el foco en la celda si cambias el valor, lo que es probable que te pase es que el foco no te lo pinta de azul, Si lo que quieres es que el foco te lo pinte azul, mirate la propiedad Options de StringGrid, y podrás ver una que se llama "goDrawnFocusSelected", poniendola esta opcion a True, conseguiras que te pinte el foco de azul.


La franja horaria es GMT +2. Ahora son las 04:37:30.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi