AGB  ·  Datenschutz  ·  Impressum  







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

Ausführen eines Dialogs verhindern

Ein Thema von lorenz · begonnen am 29. Feb 2004 · letzter Beitrag vom 1. Mär 2004
Antwort Antwort
lorenz

Registriert seit: 7. Nov 2003
86 Beiträge
 
Delphi 7 Personal
 
#1

Ausführen eines Dialogs verhindern

  Alt 29. Feb 2004, 18:18
Hallo alle zusammen!

Ich habe eine Standartaktion TFileSaveAs in einer TActionList. Wenn der Benutzer nun im Menü auf den Eintrag "Speichern unter" klickt, soll das Programm zunächst mit if (hauptfenster.MDIChildCount=0) then {...}; überprüfen, ob ein Fenster geöffnet ist, und dann erst den Dialog anzeigen.

In welches Event muss ich das schreiben (ich denke Mal in BeforeExecute) und wie gebe ich dann zurück, dass der Dialog nicht angezeigt werden soll?

Gibt's da sowas wie return false oder so ähnlich, was ich in {...} schreiben kann?

Man liest sich,

Lorenz
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Ausführen eines Dialogs verhindern

  Alt 1. Mär 2004, 16:19
Moin Lorenz,

also ich würde es schon einmal mit einem anderen Ansatz versuchen:

Warum kann ein Menüpunkt angewählt werden, wenn er zu dem Zeitpunkt keinen Sinn macht?
Ich würde also bei jedem Schliessen eines MDI Childs prüfen, ob noch eines vorhanden ist, und ggf. den Menüpunkt deaktivieren.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
lorenz

Registriert seit: 7. Nov 2003
86 Beiträge
 
Delphi 7 Personal
 
#3

Re: Ausführen eines Dialogs verhindern

  Alt 1. Mär 2004, 16:51
Tut mir leid, aber mir gefällt das nicht, dass in der Symbolleiste die Hälfte der Icons Enabled=false sind, da man dann nur noch graue Schatten erkennen kann. Ich mach's jetzt halt so:
Delphi-Quellcode:
procedure Thauptfenster.ToolButton3Click(Sender: TObject);
begin
if mdichildcount>0 then schliessenExecute(sender);
end;
MfG

Lorenz
  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:01 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