AGB  ·  Datenschutz  ·  Impressum  







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

MDI-App, Hauptmenüeinträge enablen/disablen

Ein Thema von Warp · begonnen am 31. Dez 2008 · letzter Beitrag vom 31. Dez 2008
 
Benutzerbild von bigg
bigg

Registriert seit: 1. Jul 2007
155 Beiträge
 
#2

Re: MDI-App, Hauptmenüeinträge enablen/disablen

  Alt 31. Dez 2008, 11:04
Hallo Warp,

hierfür eignet sich die Methode OnIdle, die zwar häufig aufgerufen wird und für CPU-Lastige Funktionalitäten nicht missbraucht werden sollte, aber in deinem Fall die optimale Lösung darstellen sollte:

Delphi-Quellcode:

//------------------------------------------------------------------------------
// OnIdle:
//------------------------------------------------------------------------------

procedure TMainForm.OnIdle(Sender: TObject; var Done: Boolean);
var b: Boolean;
begin
  //geht auch kürzer
  b := (Self.MDiChildCount > 0);

  actnFileSave.Enabled := b;
  actnFileSaveAs.Enabled := b;
  actnFilePrintPreview.Enabled := b;
  actnFilePrintSettings.Enabled := b;
  actnEditUndo.Enabled := b;
  actnEditRedo.Enabled := b;
end;

//------------------------------------------------------------------------------
// OnIdleInit: Einmal im OnCreate bzw. Konstruktur aufrufen
//------------------------------------------------------------------------------

procedure TMainForm.SetApplicationIdleProc;
var Done: Boolean;
begin
  Application.OnIdle := OnIdle;
  Done := True;
  OnIdle(Self, Done);
end;
PS: Code ist ungetestet.
Ich bin ja quasi die perfekte Mischung aus jung, aber sehr erfahren.
  Mit Zitat antworten Zitat
 


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 09:12 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