Jump to content


Photo

[RESUELTO] El Prisionero de Zenda. (Simular un click en una celda de DbGrid)


  • Please log in to reply
4 replies to this topic

#1 TiammatMX

TiammatMX

    Advanced Member

  • Miembros
  • PipPipPip
  • 1750 posts
  • LocationUniverso Curvo\Vía Láctea\Sistema Solar\Planeta Tierra\América\México\Ciudad de México\Xochimilco\San Gregorio Atlapulco\Home

Posted 13 September 2010 - 04:30 PM

Pues sí, muchachos..., tengo un DbGrid cargado con 'n' cantidad de registros, y como todo buen dbgrid que se precie, el cursor está en la esquina superior izquierda.

Resulta que yo tengo una función que realiza una actualización de datos, refiriéndose a celdas específicas del dbgrid...



delphi
  1. procedure TFrmDtllAnmInv.dbgrdPrsInvSPCellClick(Column: TColumn);
  2. begin
  3.   FNgcDtllAnmInc.PscnrRgstr(dbgrdPrsInvSP.Columns.Items[7].Field.AsString,
  4.                             dbgrdPrsInvSP.Columns.Items[8].Field.AsString,
  5.                             dbgrdPrsInvSP.Columns.Items[9].Field.AsString);
  6. end;



... que como podemos observar, se activa al hacer click con el ratón en cualquier celda. Deseo saber cómo "simular" vía código que se ha pulsado click en una celda del dbgrid, para activar ésta funcionalidad al inicio de mi pantalla.

P. D.: Si consideran que mi petición es "rara", es por que llevo casi 48 horas programando y ya no doy pie con bola.
  • 0

#2 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14469 posts
  • LocationMéxico

Posted 13 September 2010 - 04:42 PM

Hola

Pues..... ese prisionero tiene la llave y no quiere salir :D :D :D



delphi
  1. procedure TForm1.FormShow(Sender: TObject);
  2. var
  3.   Columna: TColumn;
  4. begin
  5.   Columna:= TColumn.Create(nil);
  6.   DBGrid1.OnCellClick(Columna);
  7. end;



Salud OS

PD, no te olvides de liberar Columna
  • 0

#3 TiammatMX

TiammatMX

    Advanced Member

  • Miembros
  • PipPipPip
  • 1750 posts
  • LocationUniverso Curvo\Vía Láctea\Sistema Solar\Planeta Tierra\América\México\Ciudad de México\Xochimilco\San Gregorio Atlapulco\Home

Posted 13 September 2010 - 05:10 PM

Hola

Pues..... ese prisionero tiene la llave y no quiere salir :D :D :D


Te digo, ya no sé ni cómo me llamo...  :D :D  Gracias.
  • 0

#4 cadetill

cadetill

    Advanced Member

  • Moderadores
  • PipPipPip
  • 994 posts
  • LocationEspaña

Posted 13 September 2010 - 11:54 PM

Buenas,

Dado que no usas el parámetro Column, te bastaría con hacer la llamada y pasarle un nil como parámetrlo



delphi
  1.   DBGrid1.OnCellClick(nil);



Lo que sí haría es verificar que estuviera asignado el evento



delphi
  1.   if Assigned(DBGrid1.OnCellClick) then
  2.     DBGrid1.OnCellClick(nil);



De esta forma te olvidas de liberar nada ;)

Nos leemos
  • 0

#5 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14469 posts
  • LocationMéxico

Posted 14 September 2010 - 07:29 AM

Buenas,

Dado que no usas el parámetro Column, te bastaría con hacer la llamada y pasarle un nil como parámetrlo



delphi
  1.   DBGrid1.OnCellClick(nil);



Lo que sí haría es verificar que estuviera asignado el evento



delphi
  1.   if Assigned(DBGrid1.OnCellClick) then
  2.     DBGrid1.OnCellClick(nil);



De esta forma te olvidas de liberar nada ;)

Nos leemos


Ah vaya, ya nos ahorramos utilización innecesaria de memoria (y)

Salud OS
  • 0




IP.Board spam blocked by CleanTalk.