Einzelnen Beitrag anzeigen

codenoob
(Gast)

n/a Beiträge
 
#5

AW: Socket.data Werte an Listview übergeben

  Alt 21. Jan 2016, 00:15
ich hab es vorher so gemacht
Delphi-Quellcode:
procedure TClientForm.ServerSocket1ClientRead(Sender: TObject; Socket: TCustomWinSocket);
....
....
....
    integer(p) := Socket.Handle;

    Li.Data := p;

    LI.ImageIndex := 0;
    LI.Caption := SocketData.User;
    li.SubItems.add(SocketData.Color);
    Li.SubItems.add(SocketData.Font);
....
....
....
end;

procedure TClientForm.DisconnectSocket(SocketData: TSocketData);
var
Li : TListItem;
P : Pointer;
begin

 integer(P) :=Socket.Handle;

 Li:=listview1.finddata(2,p ,true,false);

if Li<>nil then
begin
Li.Delete;
end;

  if SocketData = nil then exit;

end;
und so hat es funktioniert es geht einfach nicht mehr wenn ich LI.data := (P) durch LI.Data := TSocketData ersetze.
Kann man mit Finddata
Li:=listview1.finddata(2,p ,true,false); überhaupt Werte einer übergebenen Klasse finden?

Geändert von codenoob (21. Jan 2016 um 00:20 Uhr)
  Mit Zitat antworten Zitat