Ver Mensaje Individual
  #10  
Antiguo 15-06-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Reputación: 29
Lepe Va por buen camino
El evento OnClick no. pero dentro del evento Onclick, puedes hacer algo genérico y lanzar otro evento, aquí si puedes usar los parámetros que quieras.

Cuando se hace clic en el listview, entra en el HacerClick, en ese evento, miro si hay algun item seleccionado, y lanzo un evento nuevo el Onclick2 que lleva los parámetros que yo quiero, y el programa irá al procedimiento Recibir.

Como no explicas exactamente lo que deseas hacer, yo he pasado 2 parámetros, la propiedad TExt del item seleccionado y el texto de la segunda columna del item seleccionado.

Código Delphi [-]
// Creamos un nuevo evento
type TOnclick2 = procedure (textoItem:string; SubString:string) of object; 

TForm1 = Class(Tform);
...
private Fonclic2:Tonclick2;

public
  OnClick2 : Tonclick2 read Fonclick2 write Fonclick2;

end;
implementation

procedure TForm1.Recibir(texto:string; SubString:string);
begin
  // aqui se llega cuando se haga clic en el listview,
// con los parametros que tu necesitas
end;

procedure TForm1.HacerClick(sender : TObject);
var Texto, subtexto:string;
begin
 if Listview.Selected<>Nil then
 begin
    texto := listview.selected.text;
    subtexto := listview.Selected.String[1];

// con esto lanzamos el evento personalizado
    if Assigned(FOnclick2) then
      FOnclick2(texto, subtexto); 
 end;
end;


procedure TForm1.Button1Click(Sender: TObject);
var
TS: TTabSheet;
TV: TListView;
begin
TS := TTabSheet.Create(Self);
TS.Caption := 'TabSheet' + IntToStr(PageControl1.PageCount + 1);
TS.PageControl := PageControl1;
TV := TListView.Create(Self);
TV.Parent := TS;
TV.Align := alClient;
TV.Font.Name := 'Verdana';
Tv.Font.Size := 8;
Tv.onclick := HacerClick;
TV.Oclick2:= recibir;


Un saludo
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.

Última edición por Lepe fecha: 15-06-2005 a las 12:24:44.
Responder Con Cita