私はTActionManager
の1つを共有し、TAction
-sを割り当てたい2つのフォームがあります。別のフォームの名前を変更する
最初のフォームはメインフォームです - TActionManager
、TAction
のキャプション "アクション"を保持します。
Form1のメインメニューには、このアクションとmenuitemキャプションプロパティが「アクションA」に設定されています。 Form2にはForm1が含まれています。また、アクションはmenuitemに割り当てられ、キャプションは「アクションB」に設定されています。
デザイン時に、Form1とForm2のメニュー項目の名前が「アクションA」と「アクションB」になり、同じアクションが割り当てられます。また、実行時に正常に動作します(OnExecuteは両方のフォームに対して適切に処理されます)。
実行中、Form1メニュー項目には「Action A」というキャプションがあり、Form2にはアクションキャプションと同様にメニュー項目キャプション「Action」があります。
私はそれらを間違って含んでいますか?Form2にForm1を含めてアクションを共有したり、キャプションを変更することは可能ですか? D2010/CB2010のバグですか?
例:
- のForm1とForm2を作成し、Form1に両方
- ドロップTActionManagerにメインメニューを追加し、その中にアクション1を作成します。キャプションを変更Form1のアクション1およびその後
- 割り当てメニュー項目(Form1のTActionManagerから)もフォーム2アクション1で
- 割り当てメニュー項目(キャプションがデフォルト値からの変化を示す今太字示されている)と、デフォルトのキャプションを変更します。ランタイム中
- 現在、Form1が(Action1.Caption異なる)キャプションが変更されている、ステップ4
Delphi 2009では、これはうまくいくようです。 'TAction.Caption'を変更すると、両方のテストフォームのメニュー項目の見出しが変更されました。 – TLama
@TLamaメニューアイテムのキャプションが変更されていない場合(およびActionプロパティを設定した後)にのみ。 – NGLN
@NGLN、それを忘れてしまった。ありがとう! – TLama