Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-04-2008
jandok238 jandok238 is offline
No confirmado
 
Registrado: ago 2007
Ubicación: ¿ǝɯ dlǝɥ noʎ uɐɔ 'ʍouʞ ʇ,uop ı
Posts: 415
Poder: 0
jandok238 Va por buen camino
SetFocus en una posicion determinada (campo de un DBGRID)

Buenas tardes a todos...

Tengo una duda respecto al DBGrid...

La idea es esta: Tengo en un Form un DBGrid y un Boton.
El DBGrid esta ligado a una BD y ya tiene informacion ( 2 campos, [clave y descripcion] ).

Con el Boton (en el evento OnClick), lo que pretendo hacer es poner el foco en la fila 2 ( ó fila n ), colunma 2 (descripcion) pero que el cursor aparezca al final de lo que ya esta escrito, listo para seguir escribiendo al final...

Algo asi como poner el DBGrid en modo Edit ( bueno en si, se pone la TTable, no el DBGrid ) ...

Esto es lo que tengo :

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
  DBGrid1.SelectedIndex := 2;  // el numero de la columna (campo descripcion)
  Table1.Edit;  // pongo en edicion la TABLA
  DBGrid1.SelectedField.FocusControl;  // mando el Focus al campo  Table1.RecNo := 2;  // fila a modificar (puede ser cualquiera)
end;

hasta aki, todo bien... el detalle es que me manda el foco a la segunda columna (lo que yo quiero) pero el texto que ya tiene me aparece seleccionado. Lo que yo quiero hacer es que ese texto no aparezca seleccionado, si no que el cursor este al final, para poder escribir inmediatamente....

Espero haberme explicado...

y si no.... encontre un hilo, que muestra algo que quiero, pero aplicado a un TEdit .... algo asi

Gracias.....
Responder Con Cita
  #2  
Antiguo 09-04-2008
keyboy keyboy is offline
Miembro
 
Registrado: oct 2004
Posts: 367
Poder: 20
keyboy Va por buen camino
No es muy elegante lo que te propongo pero algo es algo:

Código Delphi [-]
type
  TExtDBGrid = class(TDBGrid);

procedure TForm1.Button1Click(Sender: TObject);
begin
  DBGrid1.SelectedIndex := 2;  // el numero de la columna (campo descripcion)
  Table1.Edit;  // pongo en edicion la TABLA
  DBGrid1.SelectedField.FocusControl;  // mando el Focus al campo  Table1.RecNo := 2;  // fila a modificar (puede ser cualquiera)

  if Assigned(TExtDBGrid(DBGrid1).InplaceEditor) then
    TExtDBGrid(DBGrid1).InplaceEditor.SelStart := 0;
end;

Bye
Responder Con Cita
  #3  
Antiguo 09-04-2008
jandok238 jandok238 is offline
No confirmado
 
Registrado: ago 2007
Ubicación: ¿ǝɯ dlǝɥ noʎ uɐɔ 'ʍouʞ ʇ,uop ı
Posts: 415
Poder: 0
jandok238 Va por buen camino
Muchas gracias keyboy

Si funciona.... ( es obvio, si no no lo hubieras puesto, verdad ?? )

En fin... Muchas gracias....

Eso de

Cita:
Empezado por keyboy
No es muy elegante
supongo que hay mas formas.....

Me gustaria saber cuales son, algun otro miembro que pueda ayudar....

Aclarando, la solucion que puso keyboy funciona MUY bien

Gracias....

Salu2!!!!
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Añadir columna en SQL Server en determinada posicion Mialom SQL 1 22-02-2008 20:22:39
Reemplazar caracter de una determinada posición. Drahcir Varios 5 05-12-2007 16:14:56
Set focus en una posicion determinada jorgegetafe Varios 2 03-11-2007 19:43:36
Captar por la posición del ratón un campo en un dbgrid Sayuri Conexión con bases de datos 3 29-07-2005 10:38:30
Ir a una determinada posicion de una tabla VolaRe Conexión con bases de datos 1 02-06-2004 20:12:51


La franja horaria es GMT +2. Ahora son las 18:57:10.


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
Copyright 1996-2007 Club Delphi