Я перепробовал множество методов, связанных с RibbonApplicationMenuBar, чтобы пользователь не мог выбрать RibbonApplicationMenuBar с помощью мыши, пока настройки проектов не загрузятся из inifile и не закроется форма всплеска. Но, кажется, ничто не помогает сделать RibbonApplicationMenuBar InActive, пока не будет сказано иначе.
Файл справки ничего не показывает о многих свойствах RibbonApplicationMenuBar и справочной вики, так что я не могу решить эту проблему.
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;
Если RibbonApplicationMenuBar неактивен, пользователь может выбрать RibbonApplicationMenuBar, прежде чем он будет готов к выбору. Любые предложения приветствуются. Я знаю, что все методы, показанные здесь, не являются правильными или, возможно, не в порядке ... это просто моя попытка предотвратить активацию RibbonApplicationMenuBar и ее нажатие до тех пор, пока форма-заставка не закроется.
Спасибо
Bill