AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Doppelclick bei Actions verhindern
Thema durchsuchen
Ansicht
Themen-Optionen

Doppelclick bei Actions verhindern

Ein Thema von Thomas Feichtner · begonnen am 1. Okt 2015 · letzter Beitrag vom 8. Okt 2015
Antwort Antwort
Seite 2 von 2     12   
Zoot

Registriert seit: 30. Jan 2006
Ort: Hessen
110 Beiträge
 
Delphi 11 Alexandria
 
#11

AW: Doppelclick bei Actions verhindern

  Alt 5. Okt 2015, 10:16
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.
Erklär doch bitte mal den wirklichen Sinn.
Warum benutzt du eine Navbar, die man dann aber nicht anklicken darf?
Bzw. warum sind dort Actions hinterlegt, die dann aber nicht ausgeführt werden dürfen?
  Mit Zitat antworten Zitat
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#12

AW: Doppelclick bei Actions verhindern

  Alt 5. Okt 2015, 10:23
Wenn ich das richtig verstanden habe, soll die Aktion beim einfachen Klick ausgeführt werden. Danach ist das Element in der Navbar aktiv. Also musst du nur in der Aktion prüfen, ob das Element in der Navbar aktiv ist oder nicht und dementsprechend die Aktion ausführen oder nicht.
Hinter dir gehts abwärts und vor dir steil bergauf ! (Wolfgang Ambros)
  Mit Zitat antworten Zitat
Thomas Feichtner

Registriert seit: 30. Nov 2007
Ort: Rum
137 Beiträge
 
Delphi 10.4 Sydney
 
#13

AW: Doppelclick bei Actions verhindern

  Alt 8. Okt 2015, 08:07
Hallo,

baumina hat es schon richtig verstanden.

Ich könnte für jede Action folgenden Code schreiben (siehe unten). Somit kann ich verhindern, dass durch schnelles mehrfaches clicken (Button, NavBar,...) die Action mehrfach aufgerufen wird, wenn das "Mach was" sehr lange dauert.


Es wäre einfach schön, wenn ich das nicht für jede Action das programmiern muss.

Delphi-Quellcode:
procedure TForm1.Action1Execute(Sender: TObject);
begin
  Action1.Enabled := False;
  ... -> Mach was
  Action1.Enabled := True;
end;

procedure TForm1.Action2Execute(Sender: TObject);
begin
  Action2.Enabled := False;
  ... -> Mach was
  Action2.Enabled := True;
end;
mfg

Thomas Feichtner
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#14

AW: Doppelclick bei Actions verhindern

  Alt 8. Okt 2015, 08:58
Momentan rate ich mal ein bisserl.

Ginge dashier nicht?
Delphi-Quellcode:
procedure TmyActionList.OnActionExecute(Sender: TObject);
begin
  if Assigned(FOnExecuteAction) then begin
    if Sender is TAction then TAction(Sender).Enabled := False;
    FOnExecuteAction(Self);
    if Sender is TAction then TAction(Sender).Enabled := True;
  end;
end;
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 14:03 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