Ho provato molti metodi associati a RibbonApplicationMenuBar per impedire a un utente di selezionare RibbonApplicationMenuBar con un mouse finché le impostazioni dei progetti non vengono caricate da un inifile e una splashform si chiude. Ma nulla sembra funzionare per rendere RibbonApplicationMenuBar InActive fino a quando non viene indicato diversamente.Come rendere RibbonApplicationMenuBar inattivo/attivo?
Il file della guida non mostra nulla su molte proprietà di RibbonApplicationMenuBar e l'aiuto Wiki lo stesso, quindi non sono in grado di risolverlo.
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;
A meno che il RibbonApplicationMenuBar è inattivo l'utente può selezionare il RibbonApplicationMenuBar prima che sia pronto per essere selezionato. Qualsiasi suggerimento è apprezzato. So che tutti i metodi mostrati qui non sono corretti o forse fuori uso ... è solo il mio tentativo di impedire a RibbonApplicationMenuBar di diventare attivo e selezionabile fino alla chiusura del modulo di avvio.
Grazie,
Bill
Perché non mostrare lo schermo di avvio in modo modale? Ciò impedirà qualsiasi interazione con qualsiasi altra forma. –
La barra multifunzione delle applicazioni Microsoft non diventa attiva fino a quando l'applicazione non è completamente caricata ... sto solo cercando di duplicarlo. Non voglio una schermata iniziale modale. –
Non sto utilizzando la barra multifunzione di Delphi, ma per quanto riguarda il collegamento degli elementi del nastro alle azioni. Quindi puoi semplicemente abilitare/disabilitare l'azione o persino nasconderla. Sono d'accordo che l'interfaccia utente della barra multifunzione non dovrebbe comportarsi in questo modo. – Mihaela