![]() |
Doppelclick bei Actions verhindern
Hallo,
wie kann ich verhindern, dass der Anwender auf einen Menüpunkt (Action) einen doppelclick macht? |
AW: Doppelclick bei Actions verhindern
Die Maus wegnehmen?
|
AW: Doppelclick bei Actions verhindern
Zitat:
|
AW: Doppelclick bei Actions verhindern
Das geht doch gar nicht :gruebel: Das Menü geht schon beim ersten Click zu.
Sherlock |
AW: Doppelclick bei Actions verhindern
Mehr Rum reichen? 8-)
|
AW: Doppelclick bei Actions verhindern
Zitat:
|
AW: Doppelclick bei Actions verhindern
Beim Klick auf einen Hauptmenü-Eintrag ohne Untermenü geht da gar nix zu. :stupid:
|
AW: Doppelclick bei Actions verhindern
Hallo!
Ich hätte mal folgendes probiert: Eine Ableitung der ActionList und mich reingehängt. Das funktioniert aber nur so lange in einem OnExecute nicht wieder eine andere Action aufgerufen wird.
Delphi-Quellcode:
unit myActionList;
interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ActnList, IniFiles, Stdctrls, Menus; type TmyActionList = class(TActionList) private { Private-Deklarationen } oAction: TCustomAction; FOnExecuteAction: TNotifyEvent; procedure OnActionExecute(Sender: TObject); protected { Protected-Deklarationen } public { Public-Deklarationen } constructor Create(AOwner: TComponent); override; function ExecuteAction(Action: TBasicAction): Boolean; override; published { Published-Deklarationen } end; var oCallBackToMemLog : TCallBackEventToMemLog; implementation constructor TmyActionList.Create(AOwner: TComponent); begin inherited; oAction := nil; end; function TmyActionList.ExecuteAction(Action: TBasicAction): Boolean; begin if Action is TCustomAction then begin FOnExecuteAction := TCustomAction(Action).OnExecute; TCustomAction(Action).OnExecute := OnActionExecute; oAction := TCustomAction(Action); oAction.Enabled := False; end; end; procedure TmyActionList.OnActionExecute(Sender: TObject); begin if Assigned(FOnExecuteAction) then begin FOnExecuteAction(Self); end; oAction.Enabled := True; TCustomAction(oAction).OnExecute := FOnExecuteAction; end; end. |
AW: Doppelclick bei Actions verhindern
... und gestern war Sonntag.
Kannst du mal bitte erklären was du warum machen willst und wobei du nun Probleme hast? |
AW: Doppelclick bei Actions verhindern
Ich habe im Hauptformular von DevExpress die TdxNavBar.
Bei den einzelnen Items hängt überall eine Action dahiner. Nun möchte ich einen Doppelclick des Anwenders verhindern. Wie soll es funktionieren? Beim Click wird die Action disabled und anschlißend wieder enabled. Nun möchte ich das nicht bei jedem OnClick ausführen sondern global verhindern -> Daher meine Ableitung der Actionlist. Das funktioniert soweit auch. Jedoch wenn ich innerhalb eines OnExcute eine andere Action aufrufe komme ich nicht mehr auf die erste Action zurück. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:22 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz