このスレッドで提供されたヘルプとアドバイスのおかげで、Microsoft リボン フレームワークを使用して初めて Delphi 以外のリボンを作成しました。
A.Bouchez がそのスレッドに投稿したガイドに従って、プロジェクトをコンパイルし、Microsoft リボンの動作を確認することができました。
ただし、コマンドの実行時にリボンを入力に応答させることができないようです。
私は常に TActionManager を使用してイベントを管理しているので、TActionManager からリボンに各 TAction をリンクするだけで済みます。上記のリンクのチュートリアルに従って、次のことを試してみましたが、役に立ちませんでした。
// actNew is the name of a TAction set in the TActionManager
procedure TfrmMain.actNewExecute(Sender: TObject);
begin
ShowMessage('execute new event');
end;
procedure TfrmMain.CommandCreated(const Sender: TUIRibbon; const Command: TUICommand);
begin
inherited;
case Command.CommandId of
cmdNew: // cmdNew was defined in the Ribbon Designer
begin
// link the ribbon commands to the TActions
actNew.OnExecute(Command as TUICommandAction); // obviously will not work
end;
end;
end;
では、TAction をリボンに割り当てるにはどうすればよいでしょうか。
ありがとう。