der button soll in der dritten spalte angezeigt werden.
und das ist die komplette prozedur:
Delphi-Quellcode:
procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
var
bt: Tbutton;
r: Trect;
it: TlistItem;
begin
if athread.Connection.ReadLn = 'ok' then
begin
it := listview1.Items.add;
it.Caption := athread.Connection.Socket.Binding.PeerIP;
it.SubItems.add(sendtcp('gamename', idtcpclient1, athread.Connection.Socket.Binding.PeerIP));
r := it.DisplayRect(drBounds);
r.left := r.Left + Listview1.columns[1].Width + listview1.Columns[0].Width;
r.right := r.Left + Listview1.columns[2].Width;
bt := Tbutton.Create(self);
bt.OnClick := optionenclick;
bt.Parent := listview1;
bt.Caption := 'optionen';
it.Data := bt;
end;
end;
das ist eine antwort auf einen Broadcast. Ich wollte die einzelnen spieleserver in der listview mit einem Button ergenzen, wo man die einzelnen ditails sieht.