PDA

Ver la Versión Completa : Perdido en un array


Xianto
21-04-2005, 20:57:39
Buenas...

Estoy perdido en un array... veamos un poco de codigo:


....
var {Privadas}
vIndex: integer;
DGrids: array [0..50] of TGridssss;
....
CrearGrids(...);

procedure TSql.BuscarenGrid1Click(Sender: TObject);
begin
GridFindDialog1.Grid := DGrids[PROBLEMA];
GridFindDialog1.Execute;
end;



El problema que tengo es DGrids[PROBLEMA], ya que como puedo referenciar la grid correspondiente.... si pongo DGrids[0], todo funciona bien, pero como tengo mas de una grid, como puedo saber la que esta llamando al evento ???

Ese es el problema... espero haberme explicado bien, saludos !!!!!

jachguate
21-04-2005, 22:14:41
Te ha hecho falta detallar la información, pero supongo que tenes un solo evento asociado a todos los grids. Asi, pues el que ha generado el evento viene referenciado en el parámetro Sender (tal como te lo aclararía la ayuda de delphi).

Asi que podrias hacer:


procedure TSql.BuscarenGrid1Click(Sender: TObject);
begin
GridFindDialog1.Grid := Sender as TGridssss;
GridFindDialog1.Execute;
end;


Hasta luego.

;)

Xianto
21-04-2005, 23:28:10
jachguate me has dejado boquiabierto... gracias

Expresado en una sola palabra: Sublime !!!

Xianto
22-04-2005, 19:10:15
Vuelvo a molestar con lo mismo... al intentar hacer eso me da el siguiente error: Exception class EInvalidCast with message 'Invalid class typecast'

La verdad que no se porque lo hace ya que no deberia, pero bue...

jachguate
22-04-2005, 19:30:50
Lo que el error en este caso está diciendo es que, supongamos que el Grid al que tenes asociado el evento es un TStringGrid, luego, no podes moldearlo cómo TDBGrid.

Hasta luego.

;)