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 01-07-2008
gesjug gesjug is offline
Miembro
 
Registrado: jun 2007
Posts: 63
Poder: 17
gesjug Va por buen camino
saber que fila del dbgrid

Veran, yo lo que hago es mostrar un form con ciertos datos, lo que necesito es sacar ese form en una posicion distinta dependiendo de que fila este seleccionada en un dbgrid.
Hay alguna forma de saber las coordenadas de la fila que esta seleccionada en el dbgrid? o si no hay forma.. como puedo saber cual es la fila que esta seleccionada?? el indice o algo.

Muchas gracias
Responder Con Cita
  #2  
Antiguo 01-07-2008
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola gesjug, con la propiedad RecNo puedes saber la posicón del registro activo en tu DatSet.

Código Delphi [-]
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
 showmessage(IntToSTr(Query1.RecNo));
end;

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #3  
Antiguo 01-07-2008
gesjug gesjug is offline
Miembro
 
Registrado: jun 2007
Posts: 63
Poder: 17
gesjug Va por buen camino
hola Caro:

He probado eso pero no me sirve, yo tengo un dbgrid y lo que pasa es que saco un formulario nuevo a modo de ventana al picar en la fila, necesito saber las coordenadas o la posicion de esa fila para poder desplegar el form y que no me tape esa fila, no se si me explico.

Un saludo
Responder Con Cita
  #4  
Antiguo 01-07-2008
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola de nuevo gesjug, entonces lo podemos hacer en el evento OnMouseUp, obteniendo primero las coordenadas del dbGrid en cuestion y le sumamos la coordenada Y de la fila seleccionada de tu DBGrid, al principio pense que se podría hacer con la función MouseCoord del dbGrid, pero no, eso te devuelve la fila y columna que ha sido seleccionada.

Código Delphi [-]
procedure TForm1.DBGrid1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
 Form1.Top := DBGrid1.ClientOrigin.Y + Y;
 Form1.Left := DBGrid1.ClientOrigin.X;
 Form1.Show;
end;

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #5  
Antiguo 02-07-2008
chass chass is offline
Miembro
 
Registrado: jun 2008
Posts: 24
Poder: 0
chass Va por buen camino
Question otra pregunta

to tengo un dbgrid y al hacer click en una de sus fila quiero saber cual es..
*-------------------------*
|campo1 | campo2|campo3|
+-------------------------+
|campo4 | campo5|campo6|
+-------------------------+
|campo7 | campo8|campo9|
+-------------------------+
tengo la presente tabla "tabla1" y yo selecciono una de sus fila, por ejemplo la fila 0 que contiene 3 campos |campo1 | campo2|campo3| y mi pregunta es como hacer que me lanze en showmessage(); con el numero de fila de este
Responder Con Cita
  #6  
Antiguo 02-07-2008
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola chass, hay dos formas de obtener la fila, con la propiedad RecNo de tu DataSet como decía arriba o con la función MouseCoord de tu DBGrid.

Con RecNo

Código Delphi [-]
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
  showmessage(IntToSTr(Query1.RecNo));
end;

Con MouseCoord

Código Delphi [-]
procedure TForm1.DBGrid2MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var
 Coordenadas : TGridCoord;
begin
 Coordenadas := DBGrid2.MouseCoord(X,Y);
 showmessage('Columna:'+IntToStr(Coordenadas.X)+' Fila:'+IntToStr(Coordenadas.Y));
end;

Eso es lo que quieres o quieres obtener los valores de la fila que has seleccionado.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
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
Como saber la posicion Fila, Columna en un MEMO? bustio Varios 5 28-01-2013 17:56:48
tomar una fila de un DBGrid y traspasarlo a otro DBGrid micky mouse Varios 2 05-06-2008 16:24:18
Fila DBGRID hcalero Varios 4 09-05-2007 13:29:12
Saber la última fila insertada dunia_lv MS SQL Server 5 07-04-2005 21:26:01
Fila del DbGrid Rabata Varios 3 08-11-2004 22:18:13


La franja horaria es GMT +2. Ahora son las 08:30:47.


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