uibuttongroup
ラジオ ボタンとトグル ボタンを管理するボタン グループの作成
説明
bg = uibuttongroup は現在の Figure 内にボタン グループを作成し、ButtonGroup オブジェクトを返します。利用可能な Figure がない場合は、MATLAB® が関数 figure を呼び出して Figure を作成します。
bg = uibuttongroup( は、指定された親コンテナー内にボタン グループを作成します。親コンテナーには、Figure か、パネルなどの Figure 子コンテナーを指定できます。parent)
bg = uibuttongroup(___, は、1 つ以上の名前と値の引数を使用して、Name,Value)ButtonGroup プロパティを指定します。このオプションは、前述の構文のすべての入力引数の組み合わせで使用できます。詳細については、名前と値の引数を参照してください。
例
UI Figure 内にボタン グループを作成します。3 つのトグル ボタンをボタン グループに追加します。既定では、最初のボタンが選択されます。
fig = uifigure; bg = uibuttongroup(fig,"Position",[137 113 123 85]); b1 = uitogglebutton(bg,"Text","Button 1","Position",[10 50 100 22]); b2 = uitogglebutton(bg,"Text","Button 2","Position",[10 28 100 22]); b3 = uitogglebutton(bg,"Text","Button 3","Position",[10 6 100 22]);

[Button 3] をクリックします。ボタン グループは、最初のボタンを選択解除されているものとして表示し、3 番目のボタンを選択されているものとして表示することで、トグル ボタンの選択を管理します。

UI Figure 内にボタン グループを作成します。3 つのラジオ ボタンをボタン グループに追加します。既定では、最初のボタンが選択されます。
fig = uifigure; bg = uibuttongroup(fig,"Position",[137 113 123 85]); b1 = uiradiobutton(bg,"Text","Button 1","Position",[10 50 100 22]); b2 = uiradiobutton(bg,"Text","Button 2","Position",[10 28 100 22]); b3 = uiradiobutton(bg,"Text","Button 3","Position",[10 6 100 22]);

[Button 3] をクリックします。ボタン グループは、最初のボタンを選択解除されているものとして表示し、3 番目のボタンを選択されているものとして表示することで、ラジオ ボタンの選択を管理します。

UI Figure 内にボタン グループを作成します。6 つのトグル ボタンを追加し、最初の 3 つがボタン グループの上縁から外れるようにします。
fig = uifigure; bg = uibuttongroup(fig,"Position",[20 20 196 135]); tb1 = uitogglebutton(bg,"Position",[11 165 140 22],"Text","One"); tb2 = uitogglebutton(bg,"Position",[11 140 140 22],"Text","Two"); tb3 = uitogglebutton(bg,"Position",[11 115 140 22],"Text","Three"); tb4 = uitogglebutton(bg,"Position",[11 90 140 22],"Text","Four"); tb5 = uitogglebutton(bg,"Position",[11 65 140 22],"Text","Five"); tb6 = uitogglebutton(bg,"Position",[11 40 140 22],"Text","Six");

ボタン グループの Scrollable プロパティを 'on' に設定して、スクロールを有効にします。既定で、スクロール ボックスが上部に表示されます。
bg.Scrollable = 'on';
ユーザーがボタン グループ内の異なるラジオ ボタンを選択したときに、直前と現在のボタン選択を MATLAB コマンド ウィンドウに表示するアプリを作成します。
buttonGroupApp.m という名前のファイルで、アプリを実装する関数を作成します。
3 つのラジオ ボタンが含まれているボタン グループをもつ UI Figure を作成します。
前に選択されたラジオ ボタンと現在選択されているラジオ ボタンのテキストを表示するボタン グループに対する
displaySelectionという名前のコールバック関数を作成し、その関数をSelectionChangedFcnコールバック プロパティに割り当てます。コールバックの詳細については、プログラムで作成したアプリ用のコールバックの作成を参照してください。
function buttonGroupApp fig = uifigure; bg = uibuttongroup(fig, ... "SelectionChangedFcn",@displaySelection, ... "Position",[137 113 123 85]); r1 = uiradiobutton(bg, ... "Text","Option 1", ... "Position",[10 50 100 22]); r2 = uiradiobutton(bg, ... "Text","Option 2", ... "Position",[10 28 100 22]); r3 = uiradiobutton(bg, ... "Text","Option 3", ... "Position",[10 6 100 22]); function displaySelection(src,event) disp("Previous: " + event.OldValue.Text); disp("Current: " + event.NewValue.Text); end end
関数 buttonGroupApp を実行します。ボタンの選択を変更します。コマンド ウィンドウで前の選択と現在の選択が表示されます。
buttonGroupApp

入力引数
親コンテナー。Figure オブジェクトまたはその子コンテナー (Tab、Panel、ButtonGroup、GridLayout) のいずれかとして指定します。
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。
例: uibuttongroup(Title="Options") は、ボタン グループのタイトルを Options に指定します。
R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name を引用符で囲みます。
例: uibuttongroup("Title","Options") は、ボタン グループのタイトルを Options に指定します。
メモ
以下にリストするプロパティは、利用できるプロパティの一部です。完全なリストについては、ButtonGroup を参照してください。
タイトル。文字ベクトル、string スカラー、または categorical 配列として指定します。このプロパティを categorical 配列として指定した場合、MATLAB は配列の最初の要素のみを表示します。
MATLAB では垂直スラッシュ ('|') 文字は改行として解釈されず、タイトル内に垂直スラッシュとして表示されます。
Unicode® 文字を指定する場合、Unicode 10 進コードを関数 char に渡します。たとえば、['Multiples of ' char(960)] は Multiples of π として表示されます。
背景色。RGB 3 成分、16 進数カラー コード、または表にリストされた色オプションのいずれかとして指定します。
RGB 3 成分および 16 進数カラー コードは、カスタム色を指定するのに役立ちます。
RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分の行ベクトルです。強度値は
[0,1]の範囲でなければなりません。たとえば[0.4 0.6 0.7]のようになります。16 進数カラー コードは、ハッシュ記号 (
#) で始まり、3 桁または 6 桁の0からFまでの範囲の 16 進数が続く文字ベクトルまたは string スカラーです。この値は大文字と小文字を区別しません。したがって、カラー コード"#FF8800"、"#ff8800"、"#F80"、および"#f80"は等価です。
あるいは、名前を使用して一部の一般的な色を指定できます。次の表に、名前の付いた色オプション、等価の RGB 3 成分、および 16 進数カラー コードを示します。
| 色名 | 省略名 | RGB 3 成分 | 16 進数カラー コード | 外観 |
|---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" |
|
"green" | "g" | [0 1 0] | "#00FF00" |
|
"blue" | "b" | [0 0 1] | "#0000FF" |
|
"cyan" | "c" | [0 1 1] | "#00FFFF" |
|
"magenta" | "m" | [1 0 1] | "#FF00FF" |
|
"yellow" | "y" | [1 1 0] | "#FFFF00" |
|
"black" | "k" | [0 0 0] | "#000000" |
|
"white" | "w" | [1 1 1] | "#FFFFFF" |
|
次の表に、ライト テーマとダーク テーマでのプロットの既定のカラー パレットを示します。
| パレット | パレットの色 |
|---|---|
R2025a より前: ほとんどのプロットで、これらの色が既定で使用されます。 |
|
|
|
orderedcolors 関数と rgb2hex 関数を使用すると、これらのパレットの RGB 3 成分および 16 進数カラー コードを取得できます。たとえば、"gem" パレットの RGB 3 成分を取得し、16 進数カラー コードに変換します。
RGB = orderedcolors("gem");
H = rgb2hex(RGB);R2023b より前: RGB = get(groot,"FactoryAxesColorOrder") を使用して、RGB 3 成分を取得します。
R2024a より前: H = compose("#%02X%02X%02X",round(RGB*255)) を使用して、16 進数カラー コードを取得します。
現在選択されているラジオ ボタンまたはトグル ボタン。RadioButton、ToggleButton、または UIControl オブジェクトとして指定します。
ボタン グループ内で現在選択されているボタンを判定するには、このプロパティ値をクエリします。現在選択されているボタンを変更するには、このプロパティ値を設定します。このプロパティを使用して選択を変更すると、MATLAB はそれに応じて、ボタン グループ内の他のボタンの Value プロパティを調整します。
たとえば、ボタン グループに 3 つのラジオ ボタンがあり、SelectedObject プロパティを radiobutton3 に設定したとします。MATLAB は、それぞれの子 RadioButton の Value プロパティを次のように設定します。
radiobutton1.Value = false;radiobutton2.Value = false;radiobutton3.Value = true;
つまり、SelectedObject プロパティを設定することには、ボタン グループ内のボタンの Value プロパティを設定することと同じ効果があります。
選択変更コールバック。次の値のいずれかとして指定します。
関数ハンドル。
最初の要素が関数ハンドルである cell 配列。cell 配列内のその後の要素はコールバック関数に渡される引数です。
有効な MATLAB 式を含む文字ベクトル (非推奨)。MATLAB は、この式をベース ワークスペースで評価します。
このコールバックは、ユーザーがアプリでボタン グループ内の別のボタンを選択したときに実行されます。ラジオ ボタンまたはトグル ボタンの Value プロパティがプログラムにより変更される場合には実行されません。
このコールバック関数は、ユーザーのボタン操作に関する特定の情報にアクセスできます。MATLAB は、この情報を SelectionChangedData オブジェクトに格納して、2 番目の引数としてコールバック関数に渡します。App Designer では、引数は event と呼ばれます。ドット表記を使用して、オブジェクトのプロパティをクエリできます。たとえば、event.NewValue は現在選択されているボタンを返します。SelectionChangedData オブジェクトは、文字ベクトルとして指定されているコールバック関数では使用できません。
次の表に、SelectionChangedData オブジェクトのプロパティを示します。
プロパティ | 説明 |
|---|---|
OldValue | 直前に選択されていたボタン |
NewValue | 現在選択されているボタン |
Source | コールバックを実行するコンポーネント |
EventName |
|
コールバックの記述の詳細については、App Designer のコールバックを参照してください。
ボタン グループの位置とサイズ。境界とタイトルを含みます。[left bottom width height] の形式のベクトルとして指定します。次の表で、ベクトルの各要素について説明します。
| 要素 | 説明 |
|---|---|
left | 親コンテナーの内側左端からボタン グループの外側左端までの距離 |
bottom | 親コンテナーの内側下端からボタン グループの外側下端までの距離 |
width | ボタン グループの外側の右端と左端の間の距離 |
height | ボタン グループの外側の上端と下端の間の距離 |
すべての測定値は、Units プロパティで指定した単位で表されます。
Position の値の基準は、親コンテナーの "描画可能領域" です。描画可能領域は、コンテナーの境界線の内側にある領域で、メニュー バーやタイトルなどの装飾が占める領域は含まれません。
メモ
ボタン グループがグリッド レイアウト マネージャーを親とする場合、Position プロパティの値は直ちには更新されません。Position の値を使用して、ボタン グループのサイズを基準にボタン グループの子のサイズを変更するには、SizeChangedFcn コールバックを使用します。
測定の単位。次の表のいずれかの値として指定します。
| 単位の値 | 説明 |
|---|---|
'pixels' (uifigure ベースのアプリの既定) | Windows® システムおよび Macintosh システムでは、ピクセルのサイズは 1/96 インチです。このサイズはシステムの解像度に依存しません。 Linux® システムでは、ピクセルのサイズは使用しているシステムの解像度によって決まります。 |
'normalized' (figure ベースのアプリの既定) | これらの単位は親コンテナーを基準として正規化されます。コンテナーの左下隅が |
'inches' | インチ。 |
'centimeters' | センチメートル。 |
'points' | ポイント。1 ポイントは 1/72 インチです。 |
'characters' | これらの単位は、グラフィックス ルート オブジェクトの既定の uicontrol フォントを基にしています。
既定の uicontrol フォントにアクセスするには、 |
MATLAB のほとんどのアプリ作成機能では距離をピクセル単位で測定するため、推奨値は 'pixels' です。親コンテナーのサイズに基づいて再スケーリングされるオブジェクトを作成するには、関数 uigridlayout を使用して作成されたグリッド レイアウト マネージャーをオブジェクトの親にします。詳細については、プログラミングによるアプリのレイアウトを参照してください。
ヒント
ボタン グループにはあらゆる UI コンポーネントのタイプを含めることができますが、ラジオ ボタンとトグル ボタンのみの選択を管理します。
ボタン グループ内のラジオ ボタンまたはトグル ボタンをアプリ ユーザーが選択したときにプログラムを応答させるには、ボタン グループのコールバック関数
SelectionChangedFcnを定義します。個々のボタンのコールバックを定義することはできません。選択されているラジオ ボタンまたはトグル ボタンを判定するには、ボタン グループの
SelectedObjectプロパティをクエリします。このクエリは、コード内の任意の場所で実行できます。ボタン グループ オブジェクトの
Visibleプロパティが'off'に設定されている場合、その中に含まれる子オブジェクト (ボタン、他のボタン グループなど) は、親であるボタン グループと共に非表示になります。ただし、個々の子オブジェクトのVisible"プロパティ値" は影響を受けません。
バージョン履歴
R2006a より前に導入figure 関数を使用して作成されたアプリで作成されたボタン グループは、外観が更新されました。この更新により、タイトルと境界の特定のオプションが変更されています。
TitlePosition プロパティボタン グループのタイトルはボタン グループの上部にのみ表示できます。そのため、TitlePosition の以下の値の動作が変更されています。
| 値 | R2024b 以前 | R2025a 以降 | 推奨値 |
|---|---|---|---|
'leftbottom' |
|
| ボタン グループのタイトルの位置を反映するために、'leftbottom' の代わりに 'lefttop' を使用するようにコードを更新します。 |
'centerbottom' |
|
| ボタン グループのタイトルの位置を反映するために、'centerbottom' の代わりに 'centertop' を使用するようにコードを更新します。 |
'rightbottom' |
|
| ボタン グループのタイトルの位置を反映するために、'rightbottom' の代わりに 'righttop' を使用するようにコードを更新します。 |
BorderType プロパティ表示状態のボタン グループの境界は常に線として表示されます。そのため、BorderType の一部の値の動作が変更されています。BorderType を次の表に示す値のいずれかとして指定すると、警告が表示されます。また、BorderType の既定値が 'etchedin' から 'line' に変更されています。
| 値 | R2024b | R2025a | 推奨値 |
|---|---|---|---|
'etchedin' |
|
| ボタン グループの境界のタイプを反映するために、'etchedin' の代わりに 'line' を使用するようにコードを更新します。 |
'etchedout' |
|
| ボタン グループの境界のタイプを反映するために、'etchedout' の代わりに 'line' を使用するようにコードを更新します。 |
'beveledin' |
|
| ボタン グループの境界のタイプを反映するために、'beveledin' の代わりに 'line' を使用するようにコードを更新します。 |
'beveledout' |
|
| ボタン グループの境界のタイプを反映するために、'beveledout' の代わりに 'line' を使用するようにコードを更新します。 |
ShadowColor プロパティBorderType プロパティに対する変更の結果として、ShadowColor プロパティは無効になり、このプロパティを設定すると警告が表示されるようになりました。ボタン グループの境界の色を指定するには、代わりに BorderColor プロパティを使用してください。
ShadowColor プロパティは、ButtonGroup オブジェクトで get 関数を呼び出すと返されるリストに表示されなくなりました。
figure 関数を使用して作成されたアプリの ButtonGroup オブジェクトには、次の追加プロパティが含まれます。
TooltipScrollableAutoResizeChildrenLayoutEnable
以前は、これらのプロパティは uifigure 関数を使用して作成されたアプリ内の ButtonGroup オブジェクトでのみ有効でした。
BorderColor プロパティを使用して、uifigure ベースと figure ベースの両方のアプリでボタン グループの境界線の色を変更できます。
BorderColor プロパティは、figure ベースのアプリでのみサポートされる HighlightColor プロパティよりも推奨されます。ただし、HighlightColor のサポートを削除する予定はありません。
App Designer で作成されたアプリ、および関数 uifigure を使用して作成されたアプリでは、BorderWidth プロパティを使用してボタン グループの境界幅を変更します。
ユーザーの操作にボタン グループが応答するかどうかを制御するには、Enable プロパティを使用します。Enable プロパティが 'on' に設定されている場合、ボタン グループとその内部の UI コンポーネントが有効になっている限り、それらを操作できます。Enable プロパティが 'off' に設定されている場合、ボタン グループまたはその内容を操作することはできません。
Enable プロパティは App Designer と uifigure ベースのアプリのボタン グループでのみサポートされます。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- 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)




















