AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

PopUp-Menü mit Doppelklick öffnen

Ein Thema von derpepe · begonnen am 17. Mär 2005 · letzter Beitrag vom 17. Mär 2005
Antwort Antwort
Benutzerbild von derpepe
derpepe

Registriert seit: 16. Mär 2005
Ort: Dotternhausen
164 Beiträge
 
Delphi 2005 Personal
 
#1

PopUp-Menü mit Doppelklick öffnen

  Alt 17. Mär 2005, 11:39
Hallo,

ein PopUp-Menü einzubinden das sich per Rechtsklick öffnet ist ja nicht weiter schwer.
Prinzipiell dürfte es auch nicht schwer sein ein PopUp-Menü via Doppelklick zu öffnen.

Dazu kann man doch die Methode PopUp verwenden, oder liege ich da falsch!?

Nur weiß ich bei OnDblClick nicht wo das Menü aufpoppen soll und bei OnMouseDown nicht ob doppelt geklickt wurde.

Muss ich jetzt wirklich X- und Y-Koordinate in OnMouseDown speichern und dann bei OnDblClick mein Menü aufklappen oder geht das auch ohne Variablen in nur einem Event?

Danke schonmal für eure Hilfe
Peter J. Schneider
http://raketenwerfer.de/programmieren/delphi/index.html
Nes dar in da kev, sed un est a log!
  Mit Zitat antworten Zitat
Benutzerbild von Binärbaum
Binärbaum

Registriert seit: 19. Jan 2005
Ort: Elstra
764 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: PopUp-Menü mit Doppelklick öffnen

  Alt 17. Mär 2005, 11:43
Du hast die Lösung doch schon quasi selbst vorgeschlagen:
Im OnDoubleClick wird das Menü über die Methode PopUp geöffnet und vorher speichert man noch in einem anderen Ereignis die Mauskoordinaten (z.B. im OnMouseMove), damit klar ist, wo das popUp-Menü erscheinen soll.

MfG
Binärbaum
There are exactly 10 kinds of people: those who understand binary, and those who don't.
---
"Software reift beim Kunden. Bei Hardware ist es anders: Hardware fault beim Kunden." - Rainer G. Spallek
  Mit Zitat antworten Zitat
Benutzerbild von derpepe
derpepe

Registriert seit: 16. Mär 2005
Ort: Dotternhausen
164 Beiträge
 
Delphi 2005 Personal
 
#3

Re: PopUp-Menü mit Doppelklick öffnen

  Alt 17. Mär 2005, 11:51
Hab das momentan so gemacht:

Delphi-Quellcode:
var
  Maus : TPoint;


procedure THauptfenster.SynEdit1DblClick(Sender: TObject);
begin
  PopupMenu1.Popup(Maus.X,Maus.Y);
end;

procedure THauptfenster.SynEdit1MouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  Maus.X:=X;
  Maus.Y:=Y;
  Maus:=(Sender as TControl).ClientToScreen(Maus);
end;
Funktioniert auch, aber die Variable "Maus" mag ich eigentlich nicht so haben.
Mir wäre es lieber wenn ich das alles in einem Event hätte und nicht so verstreut
Je größer das Projekt wird umso unübersichtlicher wird das.
Peter J. Schneider
http://raketenwerfer.de/programmieren/delphi/index.html
Nes dar in da kev, sed un est a log!
  Mit Zitat antworten Zitat
Benutzerbild von Catbytes
Catbytes

Registriert seit: 7. Sep 2002
Ort: Heckendalheim
353 Beiträge
 
Delphi XE5 Enterprise
 
#4

Re: PopUp-Menü mit Doppelklick öffnen

  Alt 17. Mär 2005, 11:51
Hallo,

probier mal das:

Delphi-Quellcode:
procedure TForm1.FormDblClick(Sender: TObject);
begin
  PopupMenu1.Popup(Mouse.CursorPos.X, Mouse.CursorPos.Y);
end;
Catbytes
  Mit Zitat antworten Zitat
Benutzerbild von derpepe
derpepe

Registriert seit: 16. Mär 2005
Ort: Dotternhausen
164 Beiträge
 
Delphi 2005 Personal
 
#5

Re: PopUp-Menü mit Doppelklick öffnen

  Alt 17. Mär 2005, 11:53
Perfekt!

Vielen Dank
Peter J. Schneider
http://raketenwerfer.de/programmieren/delphi/index.html
Nes dar in da kev, sed un est a log!
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz