| MATLAB Function Reference | ![]() |
表示
uimenu('PropertyName',PropertyValue,...)
uimenu(parent,'PropertyName',PropertyValue,...)
handle = uimenu('PropertyName',PropertyValue,...)
handle = uimenu(parent,'PropertyName',PropertyValue,...)
詳細
uimenu は、Figure ウィンドウのメニューバーに表示するメニューとサブメニューの階層を作成します。uimenu を使って、コンテキストメニューのメニュー項目も作成できます。
handle = uimenu(' は、指定したプロパティ値を使って、カレントのFigureのメニューバーにメニューを作成し、メニューハンドルにハンドル番号を割り当てます。PropertyName',PropertyValue,...)
handle = uimenu(parent,' は、親メニューのサブメニューや、PropertyName',PropertyValue,...)
parentで指定したコンテキストメニューのメニュー項目を作成し、メニューハンドルを、handle に出力します。parent が、他のUimenuオブジェクトやUicontextmenuの代わりにFigureを参照する場合、MATLABは、Figureの menu メニューバーに新しいメニューを作成します。
注意
MATLABは、既存のメニューバーに新しいメニューを付け加えます。メニューの各選択肢は、選択されたときにサブメニューを表示することができます。
uimenu は、入力引数として、プロパティ名とプロパティ値の組合わせ、構造体、セル配列を指定できます。UimenuのCallbackプロパティは、メニュー項目を使用可能にするときの動作を定義します。 uimenuは、作成したUimenuオブジェクトのハンドル番号をオプションで出力します。
Uimenus は、WindowStyle がnormalであるFigureでのみ表示されます。Uimenuの子オブジェクトを含むFigureは、WindowStyleがmodalに変更されると、Uimenuの子オブジェクトは存在していて、FigureのChildrenのリストに含まれますが、WindowStyleが、normalに変更されるまで、表示されません。
FigureのMenuBarプロパティの値は、Figureのメニューバー上のUimenuの位置に影響を与えます。MenuBar がfigureのときは、組み込みのメニューがメニューバー上のUimenuに優先されます(MATLABは組み込みメニューを制御しますが、ユーザはハンドル番号を利用できません)。MenuBar がnoneのとき、UimenuはFigureのメニューバー上の唯一の項目です(つまり、組み込みのメニューは表示されません)。
メニューを作成した後で、setとgetを使ってプロパティ値の設定や取得ができます。
Properties
つぎの表は、uimenuのプロパティを機能別にまとめたものです。プロパティ名は、詳細な説明とリンクされています。
| プロパティ名 |
プロパティの詳細 |
プロパティ値 |
| スタイルと外観の制御 | ||
Checked |
メニューチェックインジケータ |
値: on, offデフォルト: off |
ForegroundColor |
テキストのカラー |
値: ColorSpecデフォルト: [0 0 0] |
Label |
メニューラベル |
値: 文字列 |
SelectionHighlight |
選択したとき、強調されるオブジェクト |
値: on, offデフォルト: on |
Separator |
セパレータのラインモード |
値: on, offデフォルト: off |
Visible |
Uimenu の可視化 |
値: on, offデフォルト: on |
| オブジェクトに関する一般的な情報 | ||
Accelerator |
キーボードと等価 |
値: キャラクタ |
Children |
サブメニューのハンドル番号 |
値: ハンドル番号のベクトル |
Enable |
Uimenuの使用 |
値: on, offデフォルト: on |
Parent |
Uimenu オブジェクトの親 |
値: handle |
Tag |
ユーザ定義のオブジェクトの識別子 |
値: 文字列 |
Type |
グラフィックオブジェクトのクラス |
値: 文字列(参照のみ) デフォルト: uimenu |
UserData |
ユーザ定義データ |
値: 行列 |
| オブジェクトの位置の制御 | ||
Position |
Uimenuの相対的な位置 |
値: スカラ デフォルト: [1] |
| コールバックルーチンの実行の制御 | ||
BusyAction |
コールバックルーチンの割り込み |
値: cancel, queueデフォルト: queue |
ButtonDownFcn |
ボタンを押したときに、実行するコールバックルーチン |
値: 文字列 |
Callback |
コントロールの動作 |
値: 文字列 |
CreateFcn |
オブジェクトの作成時に実行するコールバックルーチン |
値: 文字列 |
DeleteFcn |
オブジェクトの削除時に実行するコールバックルーチン |
値: 文字列 |
Interruptible |
コールバックの割り込みモード |
値: on, offデフォルト: on |
| オブジェクトへのアクセスの制御 | ||
HandleVisibility |
コマンドラインやGUIからハンドルがアクセス可能かどうか |
値: on, callback, offデフォルト: on |
HitTest |
マウスクリックにより選択可能かどうか |
値: on, offデフォルト: on |
例題
つぎの例題は、新しいFigureウインドウの作成、ワークスペース内の変数の保存、MATLABからの終了を選択できるように、Workspaceというラベルの付いたメニューを作成します。さらに、Quitオプション用のアクセラレータキーを定義します。
f = uimenu('Label','Workspace');
uimenu(f,'Label','New Figure','Callback','figure');
uimenu(f,'Label','Save','Callback','save');
uimenu(f,'Label','Quit','Callback','exit',...
'Separator','on','Accelerator','Q');
オブジェクトの階層構造
参考
uicontrol, uicontextmenu, gcbo, set, get, figure
| uiimport | Uimenu Properties | ![]() |