Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi DirectoryListBox: Beide Maustasten mit einem OnClick? (https://www.delphipraxis.net/91796-directorylistbox-beide-maustasten-mit-einem-onclick.html)

zecke 10. Mai 2007 01:13


DirectoryListBox: Beide Maustasten mit einem OnClick?
 
:hi:

Also ich habe eine DirectoryListBox und möchte für die rechte Maustaste genauso benutzen wie die Linke. Mit der rechten Maustaste markieren und anklicken können, als wär's die Linke.

Ich fange quasi ab, welche der beiden Tasten gedrückt wird und führe dementsprechend einen Codeschnipsel aus. Mit der Linken klappt alles locker flockig. Wenn ich jetzt die Rechte drücke, soll etwas Anderes gemacht werden. Das Problem, es wird mit der rechten Maustaste keine Selektion durchgeführt, ich kann also im Grunde nicht gescheit reagieren. :?

Weiß jemand Rat?

Ich danke im voraus :mrgreen:

bitsetter 10. Mai 2007 15:16

Re: DirectoryListBox: Beide Maustasten mit einem OnClick?
 
Hi,

die Komponente TApplicationEvents habe ich auf das Formular gesetzt und beim Event onMessage folgenden Code eingefügt:
Delphi-Quellcode:
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
  var Handled: Boolean);
begin
  if Msg.hwnd = self.DirectoryListBox1.Handle then
    case Msg.message of
      WM_RBUTTONDOWN : SendMessage(self.DirectoryListBox1.Handle, WM_LBUTTONDOWN, Msg.wParam, Msg.lParam);
      WM_RBUTTONUP : SendMessage(self.DirectoryListBox1.Handle, WM_LBUTTONUP, Msg.wParam, Msg.lParam);
      WM_RBUTTONDBLCLK : SendMessage(self.DirectoryListBox1.Handle, WM_LBUTTONDBLCLK, Msg.wParam, Msg.lParam);
    end;
end;
Ansonsten könnte man es wegen WM_RBUTTONDBLCLK wohl noch mit subclassing machen. Wenn du mit der Rechten Maustaste noch was anderes machen möchtest, kannst du den Code ja noch erweitern.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:59 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