Autor Beitrag
LuMa86
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 76



BeitragVerfasst: So 02.09.12 23:10 
Moin Folks,
hab ein kleines Problem. Ich habe einen Chat geschreiben, der auf sehr gut funktioniert (das Tutorial hier von Narses). Jetzt möchte ich noch eine Extrafunktion einbauen: Nählich den Nicknamen eines anderen anpassen (also ich als Server-"Admin"). Ich ahbe mir schon überlegt wie ich das anstelle, und denke auch, das es auf anhieb funktionieren wird. Allerdings habe ich ein Problem. Und zwar, habe ich ein PopupMenu auf die ListBox gelegt. Wenn ich nun einen Rechtsklick auf einen angewählten Clienten machen, soll sich ein kleiner Dialog, mit desen Namen in einem Editfeld öffen und ein Button, der anschließen den neuen Nick abschickt. Alerdings weiß ich nicht, wie ich das mit dem Popup hinkreige :( Also, das mein Prog erkennt welcher Client gerade angewählt ist :/ Schön wäre es auhc wenn das Popup nur aufgeht, wenn ein Client angewählt ist :)

Ich hoffe ihr könnt mir auf die Sprünge helfen :)

Danke

[EDIT] Generell würde mir das helfen, denn dann könnte ich via Rehctsklcik auf einen Client geleich diesem Clienten eine Nachricht schicken :)
Mathematiker
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2622
Erhaltene Danke: 1448

Win 7, 8.1, 10
Delphi 5, 7, 10.1
BeitragVerfasst: So 02.09.12 23:26 
Hallo Luma86,
ein Popup ist nicht unbedingt notwendig. Du kannst auch das Ereignis Mousedown Deiner Listbox abfragen, z.B.
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
procedure TForm1.Listbox1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var sel:integer;
     name:string;
begin
    if button=mbRight then //nur rechte Maustaste
    begin
      sel:=listbox1.itemindex; //Nummer des selektierten Eintrags
      if sel>=0 then begin //Reaktion nur wenn selektiert
          name:=listbox1.items[sel];            
          //.... hier dialog öffnen
      end;
    end;
end;

Beste Grüße
Mathematiker

_________________
Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein

Für diesen Beitrag haben gedankt: LuMa86
LuMa86 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 76



BeitragVerfasst: Mo 03.09.12 09:01 
Genau soetwas habe ich gesucht, danke :) Damit kann ich auch gut weiterarbeiten.