Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

chooseContextMenu

クラス: matlab.uitest.TestCase
名前空間: matlab.uitest

コンテキスト メニュー項目に対する選択動作の実行

R2020b 以降

説明

chooseContextMenu(testcase,comp,menuitem) は UI コンポーネント comp の中央で右クリックを行い、コンテキスト メニューを開きます。次に、メソッドは指定された menuitem を選択します。

chooseContextMenu(testcase,comp,menuitem,location) は、コンポーネント内でコンテキスト メニューを開く場所を指定します。使用可能な 5 つのコンポーネント (座標軸、UI 座標軸、極座標軸、パネル UI figure) に対してのみ、場所を指定できます。

chooseContextMenu(testcase,uit,menuitem,indices) は、uit テーブル UI コンポーネント内の indices で指定されたセルを右クリックします。次に、メソッドは指定された menuitem を選択します。

入力引数

すべて展開する

テスト ケースのインスタンス。matlab.uitest.TestCase オブジェクトとして指定します。

コンテキスト メニューをもつ UI コンポーネント。UI コンポーネント オブジェクトとして指定します。コンテキスト メニューには menuitem で指定されるメニュー項目が含まれていなければなりません。コンテキスト メニューをサポートするコンポーネントには、イメージ、ボタン、スイッチ、座標軸、figure があります。

サポートされるコンポーネント一般的な作成関数
座標軸axes
ボタンuibutton
チェック ボックスuicheckbox
日付ピッカーuidatepicker
離散型ノブuiknob
ドロップ ダウンuidropdown
編集フィールド (数値、テキスト)uieditfield
イメージuiimage
ノブuiknob
ラベルuilabel
リスト ボックスuilistbox
パネルuipanel
極座標軸polaraxes
ラジオ ボタンuiradiobutton
スライダーuislider
スピナーuispinner
状態ボタンuibutton
スイッチ (ロッカー、スライダー、トグル)uiswitch
テキスト エリアuitextarea
トグル ボタンuitogglebutton
ツリー ノードuitreenode
UI 座標軸uiaxes
UI Figureuifigure

例: uifigure

例: axes('Position',[0.1 0.1 .6 .6])

例: uispinner('Limits',[0 10],'Value',5)

テスト中に選択するコンテキスト メニュー項目。matlab.ui.container.Menu オブジェクトとして指定します。メニュー項目は関数 uimenu を使用して作成されます。

UI コンポーネント内でコンテキスト メニューを開く場所。点の座標軸として指定します。location の形式は UI コンポーネントによって異なります。

  • 座標軸および UI 座標軸 — x 座標、y 座標、およびオプションで z 座標を含む、1 行 2 列または 1 行 3 列の数値配列。

  • 極座標軸 — θ 座標および r 座標を含む、1 行 2 列の数値配列。

  • パネルおよび UI Figure — x 座標および y 座標を含む、1 行 2 列の数値配列。コンポーネントの左下隅からのピクセル単位の座標を使用して、右クリックする点の座標を指定します。

例: [32.5 13 0.25] (UI 座標軸)

例: [pi/2 0.5] (極座標軸)

例: [100 200] (UI Figure)

ターゲットのテーブル UI コンポーネント。matlab.ui.control.Table オブジェクトとして指定します。テーブル UI コンポーネントは、関数 uitable で作成されます。

右クリックするテーブル セルのインデックス。行インデックスが列インデックスの前に示される 1 行 2 列のベクトルとして指定します。

例: [2 3]

属性

Sealedtrue

メソッドの属性の詳細については、メソッドの属性を参照してください。

すべて展開する

UI Figure に 2 つのメニュー項目をもつコンテキスト メニューを作成します。ContextMenu オブジェクトに figure の ContextMenu プロパティを設定して、figure にコンテキスト メニューを割り当てます。コンテキスト メニューを表示するには、Figure ウィンドウの任意の場所を右クリックします。

fig = uifigure;

cm = uicontextmenu(fig);
m1 = uimenu(cm,'Text','Menu1');
m2 = uimenu(cm,'Text','Menu2');

fig.ContextMenu = cm;

対話型のテスト ケースを作成し、メニュー項目 m1 を選択します。コンテキスト メニューと青色の点が figure の中央に表示されます。次に、プログラムでの選択動作を表す 2 番目の青色の点が、選択されたメニュー項目の中央に表示され、非表示になります。

tc = matlab.uitest.TestCase.forInteractiveUse;
tc.chooseContextMenu(fig,m1)

UI Figure 内に Axes オブジェクトを作成します。2 つのメニュー項目をもつコンテキスト メニューを Axes オブジェクトに割り当てます。

fig = uifigure;
ax = axes(fig);

cm = uicontextmenu(fig);
m1 = uimenu(cm,'Text','Menu1');
m2 = uimenu(cm,'Text','Menu2');

ax.ContextMenu = cm;

対話的なテストケースを作成し、その座標軸のコンテキスト メニューを座標 (0.85,0.2) で開いてメニュー項目 m2 を選択します。コンテキスト メニューと青色の点が指定された座標軸の座標に表示されます。次に、プログラムでの選択動作を表す 2 番目の青色の点が、2 番目のメニュー項目の中央に表示され、非表示になります。

tc = matlab.uitest.TestCase.forInteractiveUse;
tc.chooseContextMenu(ax,m2,[0.85 0.2]);

異なるデータ型が混在して含まれるテーブル UI コンポーネントを作成します。次に、2 つの項目をもつコンテキスト メニューをテーブルに割り当てます。

fig = uifigure;
uit = uitable(fig);
d = {'Male',52,true;'Male',40,true;'Female',25,false};
uit.Data = d;

cm = uicontextmenu(fig);
m1 = uimenu(cm,'Text','Menu1');
m2 = uimenu(cm,'Text','Menu2');
uit.ContextMenu = cm;

対話型のテスト ケースを作成し、インデックス (1,1) をもつテーブル セル内でコンテキスト メニューを開いてメニュー項目 m2 を選択します。

tc = matlab.uitest.TestCase.forInteractiveUse;
tc.chooseContextMenu(uit,m2,[1 1])

バージョン履歴

R2020b で導入

すべて展開する