7

デザイン タイムに作成された、ToolButtons のない TToolBar があります。私の考えは、実行時にツールボタンを作成し、フォームが作成されたときにそこに配置して、メインメニューで「Windows」メニューを開かなくてもどのフォームが開かれているかをユーザーに示すことです。

ナビゲーションに関する手順/関数を格納するために使用する NavigationUtils.pas という名前のユニットがあります (フォームが作成されたときのボタンの作成として)。

問題は、ツールボタンが作成されたときに OnClick イベントを構成するにはどうすればよいかということです。

4

1 に答える 1

13

TNotifyEventコメントから、OnClickイベントにを割り当てていないことは明らかです。の宣言TNotifyEventは次のとおりです。

TNotifyEvent = procedure(Sender: TObject) of object;

したがって、タイプが単一のパラメータを持つプロシージャが必要でありTObject、プロシージャはオブジェクトのメソッドである必要があります。だから、このようなもの:

procedure TMyForm.ToolButtonClick(Sender: TObject);

そして、次のように割り当てることができます。

NewToolButton.OnClick := ToolButtonClick;
于 2012-12-20T11:33:33.643 に答える