Ich habe viele mit RibbonApplicationMenuBar verbundene Methoden ausprobiert, um zu verhindern, dass ein Benutzer die RibbonApplicationMenuBar mit einer Maus auswählt, bis die Projekteinstellungen von einer Inifile geladen und ein Splashform geschlossen wird. Aber nichts scheint zu funktionieren, um die RibbonApplicationMenuBar InActive zu machen, bis etwas anderes gesagt wird.Wie mache RibbonApplicationMenuBar inaktiv/aktiv?
Die Hilfe-Datei zeigt nichts über viele der Eigenschaften von RibbonApplicationMenuBar und das Hilfe-Wiki das gleiche, so dass ich nicht lösen kann.
procedure TMainForm.FormCreate(Sender: TObject);
begin
// make theRibbonApplicationMenuBar1 inactive
RibbonApplicationMenuBar1.Enabled := False;
RibbonApplicationMenuBar1.Inactive := True;
RibbonApplicationMenuBar1.Hide;
RibbonApplicationMenuBar1.AutoFocus := False;
// read application settings
ReadIni(AIniFileFilename);
// show a splash form
FormSplash := TFormSplash.Create(MainForm);
// FormSplash.Parent := MainForm;
FormSplash.Position := poOwnerFormCenter;
FormSplash.Show;
FormSplash.Update;
end;
procedure TMainForm.FormShow(Sender: TObject);
begin
// close the splash form
FormSplash.RequestClose;
// Activate the RibbonApplicationMenuBar
RibbonApplicationMenuBar1.Enabled := True;
RibbonApplicationMenuBar1.Inactive := False;
if RibbonApplicationMenuBar1.CanFocus then
RibbonApplicationMenuBar1.SetFocus;
RibbonApplicationMenuBar1.AutoFocus := True;
RibbonApplicationMenuBar1.SelectApplicationButton;
RibbonApplicationMenuBar1.Show;
end;
Sofern die RibbonApplicationMenuBar inaktiv ist der Benutzer kann die RibbonApplicationMenuBar auswählen, bevor sie bereit ist, ausgewählt werden. Irgendwelche Vorschläge werden geschätzt. Ich weiß, dass alle hier gezeigten Methoden nicht korrekt oder möglicherweise nicht in der richtigen Reihenfolge sind ... es ist nur mein Versuch zu verhindern, dass die RibbonApplicationMenuBar aktiv und anklickbar wird, bis das Splash-Formular geschlossen wird.
Danke,
Bill
Warum zeigen Sie den Begrüßungsbildschirm nicht modal? Das verhindert jegliche Interaktion mit anderen Formen. –
Microsoft-Anwendungen Ribbonbar wird nicht aktiv, bis die Anwendung vollständig geladen ist ... ich versuche nur, das zu duplizieren. Ich möchte keinen modalen Begrüßungsbildschirm. –
Ich benutze nicht das Ribbon von Delphi, aber was ist mit der Verknüpfung von Ribbon-Elementen zu Aktionen. Dann können Sie die Aktion einfach aktivieren/deaktivieren oder sogar ausblenden. Ich stimme zu, dass die Ribbon-Benutzeroberfläche sich nicht so verhalten sollte. – Mihaela