uicontrol
ユーザー インターフェイス コントロールの作成
構文
説明
メモ
関数 uicontrol
は、App Designer 内または関数 uifigure
を使用して作成されたアプリ内ではサポートされません。これらのコンテキストで代わりに使用できるコンポーネントの一覧については、アプリ作成コンポーネントを参照してください。
c = uicontrol
はプッシュ ボタン (既定のユーザー インターフェイス コントロール) を現在の Figure 内に作成し、UIControl
オブジェクトを返します。Figure が存在しない場合は、MATLAB® が関数 figure
を呼び出して Figure を作成します。
c = uicontrol(
は、1 つ以上の名前と値のペアの引数を使用して、指定されたプロパティ値をもつユーザー インターフェイス コントロールを作成します。たとえば、Name,Value
)'Style','checkbox'
はチェック ボックスを作成します。
c = uicontrol(
は、現在の Figure に既定で作成するのではなく、指定した親に既定のユーザー インターフェイス コントロールを作成します。parent
)
c = uicontrol(
は、ユーザー インターフェイス コントロールの親と、1 つ以上の名前と値のペアの引数を指定します。parent
,Name,Value
)
例
ラジオ ボタンの作成
名前と値のペアの引数 'Style'
を 'radiobutton'
として指定することで、ラジオ ボタンを作成します。名前と値のペアの引数 'String'
の値を指定することで、そのラジオ ボタンにラベルを付けます。
c = uicontrol('Style','radiobutton','String','Option 1');
パネル内にスライダーを作成
Figure と、その内部に配置されたパネルを作成します。続いて、そのパネルを親に指定し 'Style'
を 'slider'
に指定して関数 uicontrol
を呼び出すことで、パネル内にスライダーを作成します。次に、スライダーの Value
プロパティを 0.5
に設定します。
f = figure; p = uipanel(f,'Position',[0.1 0.1 0.35 0.65]); c = uicontrol(p,'Style','slider'); c.Value = 0.5;
ポップアップ メニューの選択に対するコードの応答
クリックすると選択肢のリストが表示されるポップアップ メニューを作成します。コールバック関数を使用して、ユーザーの選択したリスト項目を決定し、MATLAB コマンド ウィンドウに選択内容を表示します。
mytemps.m
としてこのコードを保存します。このコードにより、3 つのリスト項目を含むポップアップ メニューをもった Figure ウィンドウが作成されます。続いて、コールバック関数を使用してポップアップ メニューの Value
プロパティと String
プロパティがクエリされ、選択した項目がコマンド ラインに表示されます。
function mytemps f = figure; c = uicontrol(f,'Style','popupmenu'); c.Position = [20 75 60 20]; c.String = {'Celsius','Kelvin','Fahrenheit'}; c.Callback = @selection; function selection(src,event) val = c.Value; str = c.String; str{val}; disp(['Selection: ' str{val}]); end end
プログラムを実行して、Figure とそのコンテンツを生成します。
mytemps
別のメニュー項目を選択して、選択内容を変更します。たとえば、ポップアップ メニューで [Kelvin] を選択すると、コマンド ラインには Selection: Kelvin
というテキストが表示されます。
ボタンのクリックに対するコードの応答
クリックするとデータがプロットされるプッシュ ボタンを作成します。
pushbuttonPlot.m
としてこのコードを保存します。このコードにより、座標軸とプッシュ ボタンの含まれる Figure ウィンドウが作成されます。ボタンをクリックするたびにコールバック関数が実行され、正規分布した 5 つの乱数の棒グラフがプロットされます。
function pushbuttonPlot f = figure; ax = axes(f); ax.Units = 'pixels'; ax.Position = [75 75 325 280] c = uicontrol; c.String = 'Plot Data'; c.Callback = @plotButtonPushed; function plotButtonPushed(src,event) bar(randn(1,5)); end end
pushbuttonPlot
を実行し、プッシュ ボタンをクリックします。MATLAB がデータをプロットします。
編集可能なテキスト フィールドへのフォーカス
編集可能なテキスト フィールドを作成し、その関数ハンドルを関数 uicontrol
に渡すことによってフォーカスします。このアクションにより、編集可能なテキスト フィールド内でカーソルがアクティブになり、点滅します。
c = uicontrol('Style','edit'); uicontrol(c);
入力引数
parent
— 親オブジェクト
現在の Figure (既定値) | Figure
オブジェクト | Panel
オブジェクト | ButtonGroup
オブジェクト | Tab
オブジェクト
親オブジェクト。関数 figure
を使用して作成された Figure
オブジェクト、またはその子コンテナー (Panel
、ButtonGroup
、または Tab
オブジェクト) のいずれかとして指定します。この引数を使用して、ユーザー インターフェイス コントロールを作成する際に親コンテナーを指定します。
c
— ユーザー インターフェイス コントロール オブジェクト
UIControl
オブジェクト
ユーザー インターフェイス コントロール オブジェクト。UIControl
オブジェクトとして指定します。この引数を使用して、フォーカス対象とする事前定義のユーザー インターフェイス コントロールを指定します。
例: uicontrol(c)
名前と値の引数
引数のオプションのペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで Name
は引数名で、Value
は対応する値です。名前と値の引数は他の引数の後になければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name
を引用符で囲みます。
例: uicontrol('Style','checkbox')
は、ユーザー インターフェイス コントロールのスタイルとしてチェック ボックスを指定します。
メモ
ここでは、プロパティの一部だけを紹介しています。完全な一覧については、UIControl のプロパティ を参照してください。
Style
— UIControl
オブジェクトのスタイル
'pushbutton'
(既定値) | 'togglebutton'
| 'checkbox'
| 'radiobutton'
| ...
UIControl
オブジェクトのスタイル。次の表の値として指定します。
Style プロパティ値 | 例 | 説明 |
---|---|---|
'pushbutton' | マウス ボタンが離されるまで、押し下げられたままになるボタン。 | |
'togglebutton' |
| プッシュ ボタンと似た外観をもつ、オンまたはオフの状態を視覚的に示すボタン。 |
'checkbox' |
| 独自にオンまたはオフにすることが可能なオプション。 |
'radiobutton' |
| グループの一部を形成して、オンにするとグループ内の他のオプションがオフになるよう意図されたオプション。 ラジオ ボタンのセットの相互に排他的な動作を実装するには、それらのラジオ ボタンを 1 つの |
'edit' | 編集可能なテキスト フィールド。 複数行のテキストを有効にするには、 | |
'text' | スタティック テキスト フィールド。スタティック テキストを使用して、他のユーザー インターフェイス コントロールにラベルを付け、ユーザーに情報を提供し、あるいはスライダーに関連付けられた値を示します。 スタティック テキストをマウス クリックに応答させるには、 | |
'slider' | ユーザーが横または縦のバーに沿って動かす "つまみ" ボタン。バーに沿ったボタンの位置は、指定範囲内の値を示します。 | |
'listbox' | ユーザーが 1 つ以上の項目を選択できる項目のリスト。ポップアップ メニューとは異なり、リスト ボックスはクリックされても展開しません。 項目の複数選択を可能にするには、 | |
'popupmenu' | 選択肢のリストを表示するために展開されるポップアップ メニュー (別名ドロップダウン メニュー)。ポップアップ メニューは閉じられると、現在の選択を示します。いくつかの相互排他的な選択肢を提示する場合に、ポップアップ メニューを使用します。 | |
'frame' | 'frame' オプションは推奨されません。フレームの代わりに、uipanel または uibuttongroup を使用してください。GUIDE は、それらを含む UI のフレームを引き続きサポートしますが、フレームのコンポーネントは、GUIDE レイアウト エディターのコンポーネント パレットに表示されません。 |
String
— 表示するテキスト
文字ベクトル | 文字ベクトルの cell 配列 | string 配列 | categorical 配列 | ...
表示するテキスト。文字ベクトル、文字ベクトルの cell 配列、string 配列、categorical 配列、またはパイプ区切りの行ベクトルとして指定します。Style
プロパティは、使用できる配列形式を決定します。
Style プロパティ | サポートされる配列形式 | 例 |
---|---|---|
'pushbutton' | 文字ベクトル 文字ベクトルの cell 配列 string 配列 categorical 配列 |
|
'togglebutton' | ||
'checkbox' | ||
'radiobutton' | ||
'edit' | ||
'text' | ||
'listbox' | 文字ベクトル 文字ベクトルの cell 配列 string 配列 categorical 配列 パイプ区切りの行ベクトル |
|
'popupmenu' |
メモ
プッシュ ボタン、トグル ボタン、チェック ボックス、またはラジオ ボタンについて cell 配列または categorical 配列を指定した場合、MATLAB は配列内の最初の要素のみを表示します。
Position
— 位置とサイズ
[20 20 60 20]
(既定値) | [left bottom width height]
位置とサイズ。[left bottom width height]
の形式の 4 要素ベクトルとして指定します。既定の測定単位はピクセルです。次の表では、ベクトルの各要素を説明します。
要素 | 説明 |
---|---|
left | 親コンテナーの内側左端からユーザー インターフェイス コントロールの外側左端までの距離。 |
bottom | 親コンテナーの内側下端からユーザー インターフェイス コントロールの外側下端までの距離。 |
width | ユーザー インターフェイス コントロールの外側の右端と左端の間の距離。 |
height | ユーザー インターフェイス コントロールの外側の上端と下端の間の距離。 |
Position
の値の基準は、親コンテナーの描画可能領域です。描画可能領域は、コンテナーの境界線の内側にある領域で、タイトルが占める領域は含まれません。親コンテナーが Figure である場合は、メニュー バーとツール バーも描画可能領域には含まれません。
Value
— 現在の値
数値
現在の値。数値として指定します。特定のユーザー インターフェイス コントロールのステータスをクエリまたは変更するために使用します。次の表では、特定の UIControl
スタイルと関連する Value
プロパティを説明します。
Style プロパティ | Value プロパティの説明 |
---|---|
'togglebutton' |
|
'checkbox' |
|
'radiobutton' |
|
'slider' | スライダー バーに沿ったつまみの位置に関連付けられた値。 |
'listbox' | リスト ボックスで選択された項目に対応する配列インデックス。値 1 (既定) はリストの最初の項目に対応しています。複数の項目が選択されている場合、Value プロパティは行インデックスをベクトルとして保存します。 |
'popupmenu' | ポップアップ メニューで選択された項目に対応する配列インデックス。値 1 (既定) はポップアップ メニューの最初の項目に対応しています。 |
バージョン履歴
R2006a より前に導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)