AFsoft WebSite(エーエフソフト・ウェブサイト)
 

オペレーティング・システムについて

プログラミングについて
ホームページについて
キャドについて
電子カタログについて
書籍・雑誌
イベント
リンク集
DelphiXE4 [FMX]アクションリスト(ActionList) 2015/03/29
 
前回は[Standard]内の「ポップアップメニュー(PopupMenu)」について記述しましたので、今回は、同じく[Standard]内の「アクションリスト(ActionList)」です。
   【Delphi2010の記事はこちら】
   【DelphiXE3[VCLアプリケーション]の記事はこちら】
   【DelphiXE3[FMXアプリケーション]の記事はこちら】
 

 
XE4(FMX)

FMX.ActnList.TActionList
XE3(FMX)

FMX.ActnList.TActionList
(ヘルプより)
State
ユーザーがクライアント オブジェクトをトリガしたときに、アクション リスト内のアクションが応答するかどうかを示します。
 
State は、System.Actions.TActionListState 型で定義されている値のいずれか 1 つを取ることができます。取り得る定数には、asNormal、asSuspended、asSuspendedEnabled があります。
asNormal(デフォルト)
クライアント オブジェクトまたはショートカット キーによってトリガされると、アクションは通常の応答を実行します。
 
asSuspended
クライアント オブジェクトから起動するよう伝えられても、アクション リスト内のアクションは応答しません。リスト内のすべてのアクションの Enabled プロパティは変化しません。
 
asSuspendedEnabled
クライアント オブジェクトから起動するよう伝えられても、アクション リスト内のアクションは応答しません。リスト内のすべてのアクションの Enabled プロパティは True に設定されます。これは、ActionBar の設計に使用します。
 
フォーム上に作成されるActionList1アイコン/或いは構造ツリーに表示される「ActionList1」をダブルクリック/或いは ActionList1のコンテキストメニュー「アクションリストの設定」をクリックするとアクションリストエディタ「ActionList1の編集」画面が表示されます。

 
コンテキストメニュー「標準アクションの新規追加」、又は、ツールバー上の新規ボタンの右横にある「▼」をクリックを行う事によって、標準アクションを追加する事が出来ます。

又は

しかし表示されるのは

だけで、例えば、編集の中には、お約束の「切り取り」「コピー」「貼り付け」等のようなアクションがありません。普通に「新規」で登録しておく事にします。

XE4(FMX)

FMX.ActnList.TAction
XE3(FMX)

FMX.ActnList.TAction
 
Nameプロパティ「Action1」→「ActionEditCut」
ShortCutプロパティ=Ctrl+X
Textプロパティ=「切り取り(&T)」
を指定します。同様に、
Action2 を EditActionCopy、
Action3 を EditActionPaste、
に変更して追加します。

 
フォーム上に MainMenu1 と PopupMenu1 と Edit1 を貼り付けています。

 
MainMenu1 の項目を下記のようにしています。

同様に、PopupMenu1 の項目を下記のようにしています。

MenuItem2〜7 の Actionプロパティをそれぞれ指定すると ShortCut、Textプロパティはアクションリストからそのまま反映されます。Edit1 の Popupプロパティを「PopupMenu1」に指定しておきます。
 
アクションリストエディタから各アクションを指定し、オブジェクトインスペクタのイベントの OnExecute イベントを記述することにより、メニュー等をクリックしたときに、どのような動作を行わせるのかをプログラミングします。
procedure TForm1.ActionEditCopyExecute(Sender: TObject);
begin
 Edit1.CopyToClipboard;
end;
 
procedure TForm1.ActionEditCutExecute(Sender: TObject);
begin
 Edit1.CutToClipboard;
end;
 
procedure TForm1.ActionEditPasteExecute(Sender: TObject);
begin
 Edit1.PasteFromClipboard;
end;
 
その他、ツールバーや各種ボタン等に割り当てる場合も同様に Actionプロパティを指定するだけです。
 
また、DelphiXE4 をインストールしたフォルダ内の「Images」フォルダ内の「Buttons」フォルダ内にある、Copy.bmp、Cut.bmp、Paste.bmp を画像ソフトにより、16×16ドットの透過GIFファイルにしたものを、メインメニュー・ポップアップメニューのメニュー項目の Bitmap プロパティを「編集」して指定してみました。
 
保存・コンパイル(ビルド)・実行を行います。

 

 
メインメニューのメニュー項目では Bitmapプロパティは無効化されていますが、ポップアップメニューのメニュー項目では有効な様子です。
 
 
MacOSX アプリケーションでも動作OKです。

 

 
バッチファイル
BASIC
C言語のお勉強
拡張子な話
DOSプログラム
Delphi
>Delphi入門編
>Delphi2010
>DelphiXE3
>DelphiXE4
△TOP
▲2015/03/28
 2015/03/29
▼2015/03/30
 
シェアウェア
Script!World
データベース
 
お問い合わせ 
本サイトはリンクフリーです
リンクバナー
(C)Copyright 1999-2015. By AFsoft All Rights Reserved.