Tab
タブ UI コンテナー

説明
タブ UI コンテナーは、タブ グループ内のタブ付きラベルを使用して、UI コンポーネントをグループ化します。Tab オブジェクトを使用して、タブの作成後にタブの外観と動作を変更します。
作成
uitab 関数を使用してアプリでタブを作成します。
プロパティ
タイトルと色
タイトル。文字ベクトル、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 進数カラー コードを取得します。
背景色。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 進数カラー コードを取得します。
対話機能
スクロール機能。'off' または 'on'、もしくは数値または logical 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off' の値は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。
このプロパティを 'on' に設定すると、コンテナー内でのスクロールが有効になります。ただし、以下の追加要件があります。
コンテナー内の子コンポーネントは、コンテナーが一度に表示できるよりも大きい領域を占めていなければならない。
コンテナーに収まらないコンポーネントは、コンテナーより上または右になければならない。コンテナーより下または左にあるコンポーネントにスクロールすることはできません。
コンテナーにグリッド レイアウト マネージャーが含まれている場合、コンテナーの
Scrollableプロパティには何の効果もありません。スクロールを有効にするには、代わりにGridLayoutオブジェクトのScrollableプロパティを'on'に設定します。
特定のタイプのチャートと座標軸では、スクロール可能なコンテナーはサポートされていません。ただし、チャートや座標軸をスクロール不可能なパネル内に配置してから、そのパネルをスクロール可能なコンテナーに配置することはできます。詳細については、App Designer でのグラフィックスの表示を参照してください。
ツールヒント。文字ベクトル、string スカラー、文字ベクトルの cell 配列、string 配列、または 1 次元の categorical 配列として指定します。このプロパティを使用して、実行時にユーザーがポインターをコンポーネントに合わせるとメッセージが表示されるようにします。複数行のテキストを表示するには、文字ベクトルの cell 配列または string 配列を指定します。配列の各要素は、テキストの各行になります。このプロパティを categorical 配列として指定した場合、MATLAB はカテゴリの完全なセットではなく、配列内の値を使用します。
コンテキスト メニュー。関数 uicontextmenu を使用して作成された ContextMenu オブジェクトとして指定します。このプロパティは、コンポーネントを右クリックしたときにコンテキスト メニューを表示するために使用します。
位置
この プロパティ は読み取り専用です。
タブの位置とサイズ。[left bottom width height] の形式の 4 要素ベクトルとして返されます。次の表で、ベクトルの各要素について説明します。
| 要素 | 説明 |
|---|---|
left | タブ グループの内側左端からタブの内側左端までの距離です。 |
bottom | タブ グループの内側下端からタブの内側下端までの距離です。 |
width | タブの内側の左右の端の間の距離です。 |
height | タブの内側の上下の端の間の距離です。 |
すべての測定値は、Units プロパティで指定した単位で表されます。
メモ
Position プロパティを使用するときに検討しなければならない重要な点がいくつかあります。
Positionの値は、タブ タイトルの長さと親TabGroupオブジェクトのTabLocationプロパティによって影響されます。Positionの値の基準は、親TabGroupの "描画可能領域"、つまり境界内の領域です。タブがグリッド レイアウト マネージャー内にある場合、
Positionプロパティの値は直ちには更新されません。Positionの値を使用して、タブのサイズを基準にタブの子のサイズを変更するには、SizeChangedFcnコールバックを使用します。
この プロパティ は読み取り専用です。
タブの位置とサイズ。[left bottom width height] の形式の 4 要素ベクトルとして返されます。すべての測定値は、Units プロパティで指定した単位で表されます。
このプロパティ値は、Position プロパティ値および OuterPosition プロパティ値と同一です。
この プロパティ は読み取り専用です。
タブの位置とサイズ。[left bottom width height] の形式の 4 要素ベクトルとして返されます。すべての測定値は、Units プロパティで指定した単位で表されます。
このプロパティ値は、Position プロパティ値および InnerPosition プロパティ値と同一です。
測定の単位。次の表のいずれかの値として指定します。
| 単位の値 | 説明 |
|---|---|
'pixels' (uifigure ベースのアプリの既定) | Windows® システムおよび Macintosh システムでは、ピクセルのサイズは 1/96 インチです。このサイズはシステムの解像度に依存しません。 Linux® システムでは、ピクセルのサイズは使用しているシステムの解像度によって決まります。 |
'normalized' (figure ベースのアプリの既定) | これらの単位は親コンテナーを基準として正規化されます。コンテナーの左下隅が |
'inches' | インチ。 |
'centimeters' | センチメートル。 |
'points' | ポイント。1 ポイントは 1/72 インチです。 |
'characters' | これらの単位は、グラフィックス ルート オブジェクトの既定の uicontrol フォントを基にしています。
既定の uicontrol フォントにアクセスするには、 |
MATLAB のほとんどのアプリ作成機能では距離をピクセル単位で測定するため、推奨値は 'pixels' です。親コンテナーのサイズに基づいて再スケーリングされるオブジェクトを作成するには、関数 uigridlayout を使用して作成されたグリッド レイアウト マネージャーをオブジェクトの親にします。詳細については、プログラミングによるアプリのレイアウトを参照してください。
子のサイズの自動変更。'on' または 'off'、もしくは数値または logical 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off' の値は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。
'on'— コンテナーのサイズが変更されると、子コンポーネントのサイズが自動的に変更されます。この値は、uifigure関数を使用して作成された Figure 内のタブに対する既定値です。'off'— 子コンポーネントのサイズは変更されません。この値は、figure関数を使用して作成された Figure 内のタブに対する既定値です。
AutoResizeChildren プロパティはコンテナーの直接の子に影響します。入れ子にされたコンテナー内の子には影響しません。
AutoResizeChildren が 'on' の場合でも、一部の子コンポーネントのサイズは自動的に変更されません。たとえば、サイズ変更されないコンポーネントのみを含むラベル、ボタン、およびコンテナーのサイズは変更されません。
サイズ変更の動作をカスタマイズするには、グリッド レイアウト マネージャーをコンテナーに追加するか、AutoResizeChildren プロパティを 'off' に設定して、コンテナーの SizeChangedFcn コールバックを作成します。詳細については、App Designer でのサイズ変更可能アプリの管理を参照してください。
アプリのサイズ変更を無効にするには、Figure の Resize プロパティを 'off' に設定します。
AutoResizeChildren を 'on' として指定するのは、ピクセル単位を使用してレイアウトされるアプリのみにすることをお勧めします。ピクセル単位以外を使用してレイアウトされるアプリで自動サイズ変更を有効にすると、予期しない動作が生じる可能性があります。
コールバック
サイズ変更のコールバック。次の値のいずれかとして指定します。
関数ハンドル。
最初の要素が関数ハンドルである cell 配列。cell 配列内のその後の要素はコールバック関数に渡される引数です。
有効な MATLAB 式を含む文字ベクトル (非推奨)。MATLAB は、この式をベース ワークスペースで評価します。
このコールバック関数を定義して、このコンテナーのサイズが変更されたときに (ユーザーがウィンドウのサイズを変更した場合など)、アプリのレイアウトをカスタマイズします。
メモ
SizeChangedFcn コールバックは、このコンテナーの AutoResizeChildren プロパティが 'off' に設定されていない限り実行されません。App Designer で、[UI Figure プロパティ] パネルの [AutoResizeChildren] チェック ボックスをオフにすることで、SizeChangedFcn を実行可能にできます。
SizeChangedFcn コールバックは、親タブ グループ コンテナーが次の場合に実行されます。
初めて表示された。
サイズ変更中に表示された。
サイズ変更後に初めて表示された。この状況は、コンテナーが非表示の間にサイズが変更され、その後表示される場合に発生します。
SizeChangedFcn コールバックを定義するときに検討しなければならないその他の重要な点は、次のとおりです。
SizeChangedFcnが使用する変数がすべて定義されるまで、このコンテナーの表示を遅延させることを検討します。これにより、SizeChangedFcnコールバックがエラーを返すのを防ぐことができます。この遅延を実現するには、親タブ グループ コンテナーの表示を遅らせるために、そのVisibleプロパティを'off'に設定します。SizeChangedFcnコールバックが使用する変数を定義した後で、Visibleプロパティを'on'に設定します。入れ子にされたコンテナーがアプリに含まれる場合、コンテナーのサイズは内側から順に変更されます。
サイズを変更しているコンテナーに
SizeChangedFcn内からアクセスするには、ソース オブジェクト (コールバック内の最初の入力引数) を参照します。
サイズ変更動作を指定する別の方法は、GridLayout オブジェクトを作成するか、App Designer で自動リフロー オプションを使用することです。これらのオプションは SizeChangedFcn コールバックより使いやすくなっています。ただし、SizeChangedFcn コールバックにはこれらのオプションに勝る利点があります。以下に例を示します。
定義する最小サイズまでまたは最大サイズまでの、コンポーネントのサイズ変更。
非線形のサイズ変更動作の実装。
ボタンを押したときのコールバック関数。次の値の 1 つとして指定します。
関数ハンドル。
最初の要素が関数ハンドルである cell 配列。cell 配列内のその後の要素はコールバック関数に渡される引数です。
有効な MATLAB 式を含む文字ベクトル (非推奨)。MATLAB は、この式をベース ワークスペースで評価します。
コールバックのプロパティ値を関数ハンドル、cell 配列または文字ベクトルとして指定する方法の詳細については、コールバック関数の指定を参照してください。
ButtonDownFcn コールバックは、ユーザーがコンテナー内でマウス ボタンをクリックしたときに実行される関数です。
オブジェクト作成関数。次の値のいずれかとして指定します。
関数ハンドル。
最初の要素が関数ハンドルである cell 配列。cell 配列内のその後の要素はコールバック関数に渡される引数です。
有効な MATLAB 式を含む文字ベクトル (非推奨)。MATLAB は、この式をベース ワークスペースで評価します。
コールバックを関数ハンドル、cell 配列、または文字ベクトルとして指定する方法の詳細については、App Designer のコールバックを参照してください。
このプロパティは、MATLAB がオブジェクトを作成するときに実行されるコールバック関数を指定します。MATLAB は CreateFcn コールバックを実行する前に、すべてのプロパティ値を初期化します。CreateFcn プロパティを指定しない場合、MATLAB は既定の作成関数を実行します。
既存のコンポーネントに CreateFcn プロパティを設定しても効果はありません。
このプロパティを関数ハンドルまたは cell 配列として指定した場合、コールバック関数の最初の引数を使用して、作成中のオブジェクトにアクセスできます。それ以外の場合は、関数 gcbo を使用してオブジェクトにアクセスします。
オブジェクト削除関数。次の値のいずれかとして指定します。
関数ハンドル。
最初の要素が関数ハンドルである cell 配列。cell 配列内のその後の要素はコールバック関数に渡される引数です。
有効な MATLAB 式を含む文字ベクトル (非推奨)。MATLAB は、この式をベース ワークスペースで評価します。
コールバックを関数ハンドル、cell 配列、または文字ベクトルとして指定する方法の詳細については、App Designer のコールバックを参照してください。
このプロパティは、MATLAB がオブジェクトを削除するときに実行されるコールバック関数を指定します。MATLAB は、オブジェクトのプロパティを破棄する前に DeleteFcn コールバックを実行します。DeleteFcn プロパティを指定しない場合、MATLAB は既定の削除関数を実行します。
このプロパティを関数ハンドルまたは cell 配列として指定した場合、コールバック関数の最初の引数を使用して、削除されるオブジェクトにアクセスできます。それ以外の場合は、関数 gcbo を使用してオブジェクトにアクセスします。
コールバック実行制御
コールバックの割り込み。'on' または 'off'、もしくは数値または logical 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off' の値は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。
このプロパティは実行中のコールバックが割り込み可能かどうかを決定します。次の 2 つのコールバックの状態について考慮する必要があります。
"実行中" コールバックは、現在実行しているコールバックです。
"割り込み" コールバックは、実行中のコールバックに割り込もうとするコールバックです。
MATLAB は、コールバック キューを処理するコマンドを実行するたびにコールバックの割り込み動作を判別します。これらのコマンドには、drawnow、figure、uifigure、getframe、waitfor、pause があります。
実行中コールバックにこれらのコマンドが含まれていない場合、割り込みは発生しません。MATLAB は、実行中コールバックの実行を先に終了させ、その後に割り込みコールバックを実行します。
実行中コールバックにこれらのいずれかのコマンドが含まれている場合、実行中コールバックを所有するオブジェクトの Interruptible プロパティに応じて割り込みが発生するかどうかが決まります。
Interruptibleの値が'off'の場合、割り込みは発生しません。代わりに、割り込みコールバックを所有するオブジェクトのBusyActionプロパティに応じて、割り込みコールバックが破棄されるかコールバック キューに追加されるかが決まります。Interruptibleの値が'on'の場合、割り込みが発生します。MATLAB は、コールバック キューの次回処理時に、実行中コールバックの実行を停止し、割り込みコールバックを実行します。割り込みコールバックが完了した後、MATLAB は実行中だったコールバックの実行を再開します。
メモ
コールバックの割り込みと実行は、以下の状況では動作が異なります。
割り込みコールバックが
DeleteFcn、CloseRequestFcnまたはSizeChangedFcnコールバックの場合、Interruptibleプロパティの値にかかわらず割り込みが発生します。実行中のコールバックが関数
waitforを現在実行している場合、Interruptibleプロパティの値にかかわらず割り込みが発生します。割り込みコールバックが
Timerオブジェクトで所有されている場合、Interruptibleプロパティの値にかかわらずスケジュールに従ってコールバックが実行されます。
コールバック キューイング。'queue' または 'cancel' として指定します。BusyAction プロパティは MATLAB による割り込みコールバックの実行の処理方法を決定します。次の 2 つのコールバックの状態について考慮する必要があります。
"実行中" コールバックは、現在実行しているコールバックです。
"割り込み" コールバックは、実行中のコールバックに割り込もうとするコールバックです。
BusyAction プロパティによってコールバック キューイングの動作が決まるのは、次の両方の条件を満たす場合のみです。
これらの条件に当てはまる場合、割り込みコールバックを所有するオブジェクトの BusyAction プロパティに応じて MATLAB による割り込みコールバックの処理方法が決まります。BusyAction プロパティは次の値を取ることができます。
'queue'— 割り込みコールバックをキューに入れ、実行中のコールバックが終了した後に処理されるようにします。'cancel'— 割り込みコールバックを実行しません。
この プロパティ は読み取り専用です。
削除状態。matlab.lang.OnOffSwitchState 型の on/off logical 値として返されます。
MATLAB は、DeleteFcn コールバックが実行を開始すると、BeingDeleted プロパティを 'on' に設定します。コンポーネント オブジェクトが存在しなくなるまで BeingDeleted プロパティは 'on' に設定されたままです。
クエリや変更の前にオブジェクトが削除されようとしていないか確認するために BeingDeleted プロパティの値をチェックします。
親/子
親オブジェクト。TabGroup オブジェクトとして指定します。
タブの子。空の GraphicsPlaceholder またはアプリ コンポーネント オブジェクトの 1 次元配列として返されます。
タブの Children プロパティを使用して子の追加や削除を行うことはできません。このプロパティは、子のリストの参照や子の並べ替えに使用します。この配列内の子の順序は、画面に表示されるタブの順序を反映します。
このリストに子を追加するには、子コンポーネントの Parent プロパティをこの Tab オブジェクトに設定します。
オブジェクト ハンドルの可視性。'on'、'callback' または 'off' として指定します。
このプロパティは、オブジェクトの親がもつ子のリストにおけるそのオブジェクトの可視性を制御します。オブジェクトがその親オブジェクトのリストで、子として可視できない場合、オブジェクト階層の検索またはプロパティのクエリによってオブジェクトを取得する関数は、そのオブジェクトを返しません。これらの関数には、get、findobj、clf および close が含まれます。オブジェクトは参照できない場合も有効です。オブジェクトにアクセスできる場合は、そのプロパティを設定および取得して、それをオブジェクトに作用する任意の関数に渡すことができます。
| HandleVisibility の値 | 説明 |
|---|---|
'on' | オブジェクトは常に参照できます。 |
'callback' | オブジェクトはコールバック内から、あるいはコールバックにより呼び出される関数から参照できます。しかし、コマンド ラインから呼び出される関数からは参照できません。このオプションを使用すると、コマンド ラインからのオブジェクトへのアクセスがブロックされますが、コールバック関数からのアクセスは許可されます。 |
'off' | オブジェクトは常に参照できません。このオプションは、他の関数による UI の意図しない変更を防止するために役立ちます。HandleVisibility を 'off' に設定すると、その関数の実行中にオブジェクトが一時的に非表示になります。 |
識別子
この プロパティ は読み取り専用です。
グラフィックス オブジェクトのタイプ。'uitab' として返されます。
オブジェクト識別子。文字ベクトルまたは string スカラーとして指定します。オブジェクトの識別子として機能する一意の Tag 値を指定できます。コードの他の部分からオブジェクトにアクセスする必要がある場合、関数 findobj を使用して Tag 値に基づいてオブジェクトを検索できます。
ユーザー データ。任意の MATLAB 配列として指定します。たとえば、スカラー、ベクトル、行列、cell 配列、文字配列、table、または構造体を指定できます。このプロパティを使用して、任意のデータをオブジェクトに保存します。
App Designer を使用している場合は、UserData プロパティを使用する代わりに、アプリでパブリック プロパティまたはプライベート プロパティを作成してデータを共有します。詳細については、App Designer アプリ内でのデータの共有を参照してください。
オブジェクト関数
scroll | UI コンポーネント内の位置にスクロール |
isInScrollView | Determine if component is visible in scrollable container |
例
UI Figure に 2 つのタブをもつタブ グループを作成し、プロパティ値を指定してタブの外観をカスタマイズします。
fig = uifigure; tg = uitabgroup(fig); t1 = uitab(tg,"Title","Data","BackgroundColor",[0 0.4470 0.7410]); t2 = uitab(tg,"Title","Plots","BackgroundColor",[0 0.4470 0.7410]);

[データ] タブのタイトルのテキストの色をクエリします。
c = t1.ForegroundColor
c = 1×3
0.1294 0.1294 0.1294
タブの背景色に合わせてテキストの色を更新します。
t1.ForegroundColor = t1.BackgroundColor;

1 つのタブを含むタブ グループを作成します。6 つの UI コンポーネントをタブに追加し、最初の 3 つがタブの上縁から外れるようにします。
fig = uifigure; tg = uitabgroup(fig,'Position',[20 20 196 145]); t = uitab(tg,'Title','Member Information'); ef1 = uieditfield(t,'text','Position',[11 165 140 22],'Value','First Name'); ef2 = uieditfield(t,'text','Position',[11 140 140 22],'Value','Last Name'); ef3 = uieditfield(t,'text','Position',[11 115 140 22],'Value','Address'); dd = uidropdown(t,'Position',[11 90 140 22],'Items',{'Male','Female'}); cb = uicheckbox(t,'Position',[11 65 140 22],'Text','Member'); b = uibutton(t,'Position',[11 40 140 22],'Text','Send');

タブの Scrollable プロパティを 'on' に設定して、スクロールを有効にします。既定で、スクロール ボックスが上部に表示されます。
t.Scrollable = 'on';
新規スクリプトで、UI Figure に 2 つのタブをもつタブ グループを作成します。SelectionChangedFcn プロパティを displaySelection という名前の関数のハンドルとして指定します。この関数は、ユーザーがタブ グループ内でタブを切り替えたときに実行されます。
スクリプトの末尾で、MATLAB がコールバック関数に渡す 2 つの入力引数を受け入れる関数 displaySelection を定義します。
src— コールバックを実行したコンポーネントevent— コールバックをトリガーしたユーザー操作に関する情報
表示されているタブのタイトルをコマンド ウィンドウに表示するコードを、コールバック関数内に記述します。
fig = uifigure; tg = uitabgroup(fig,"SelectionChangedFcn",@displaySelection); t1 = uitab(tg,"Title","Data"); t2 = uitab(tg,"Title","Plots"); function displaySelection(src,event) t = event.NewValue; title = t.Title; disp("Viewing the " + title + " tab") end
スクリプトを実行し、タブを切り替えてタブのタイトルを表示します。
詳細については、プログラムで作成したアプリ用のコールバックの作成を参照してください。
バージョン履歴
R2014b で導入これらのプロパティは、figure 関数を使用して作成されたアプリ内のタブに使用できます。
ScrollableAutoResizeChildren
figure 関数を使用して作成されたアプリについて、タブ グループの InnerPosition プロパティをクエリしたときに以前のリリースとは異なる値が返されます。また、TabLocation が 'left' または 'bottom' の場合、タブ グループ内のタブの Position、InnerPosition、および OuterPosition の各プロパティをクエリしたときに以前のリリースとは異なる値が返されることがあります。これらの変更により、プロパティの値と動作が uifigure ベースのアプリのプロパティと一貫したものになりました。
次の表で、R2025a と以前のリリースのプロパティ値の違いを説明します。
| プロパティ | R2025a 以降 | R2024b 以前 | ||
|---|---|---|---|---|
| 説明 | イメージ | 説明 | イメージ | |
タブ グループの InnerPosition | 親の描画可能領域を基準とするタブ グループのサイズと位置を表す [left bottom width height] の形式の 4 要素ベクトル、タブ グループ内のタブの境界とタイトルは "含まない" | タブ グループの
| 親の描画可能領域を基準とするタブ グループのサイズと位置を表す [left bottom width height] の形式の 4 要素ベクトル、タブ グループ内のタブの境界とタイトルを "含む" | タブ グループの
|
タブの Position、InnerPosition、OuterPosition | タブ グループの描画可能領域を基準とするタブのサイズと位置を表す [left bottom width height] の形式の 4 要素ベクトル、タブ グループの描画可能領域に境界とタイトルは "含まない" | タブ グループの描画可能領域 (青の実線) を基準とする、タブの
| タブ グループの描画可能領域を基準とするタブのサイズと位置を表す [left bottom width height] の形式の 4 要素ベクトル、タブ グループの描画可能領域に境界とタイトルを "含む" | タブ グループの描画可能領域 (青の実線) を基準とする、タブの
|
アプリのレイアウトが変わる場合は、次のようにコードを更新することを検討してください。
タブ グループの
InnerPosition— タブ グループのInnerPositionプロパティへの参照をタブ グループのPositionプロパティに置き換えて、境界とタブのタイトルを含むタブ グループのサイズと位置を使用します。タブの
Position、InnerPosition、OuterPosition— 位置ベクトルの最初の 2 つの要素への参照を置き換えて、タブのタイトルが占める左または下の領域を代わりに使用します。たとえば、アプリにTabLocationの値が'left'のタブ グループが含まれ、そのタブ グループ内のタブのPositionプロパティを参照している場合、その参照をタブ グループの境界とタブの描画可能領域の間の水平距離に置き換えます。
uifigure 関数を使用して App Designer で作成されたアプリについて、タブ グループの InnerPosition プロパティをクエリしたときに以前のリリースとは異なる値が返されます。また、TabLocation が 'left' または 'bottom' の場合、タブ グループ内のタブの Position、InnerPosition、および OuterPosition の各プロパティをクエリしたときに以前のリリースとは異なる値が返されることがあります。
次の表で、R2022b と以前のリリースのプロパティ値の違いを説明します。
| プロパティ | R2022b 以降 | R2022a 以前 | ||
|---|---|---|---|---|
| 説明 | イメージ | 説明 | イメージ | |
タブ グループの InnerPosition | 親の描画可能領域を基準とするタブ グループのサイズと位置を表す [left bottom width height] の形式の 4 要素ベクトル、タブ グループ内のタブの境界とタイトルは "含まない" | タブ グループの
| 親の描画可能領域を基準とするタブ グループのサイズと位置を表す [left bottom width height] の形式の 4 要素ベクトル、タブ グループ内のタブの境界とタイトルを "含む" | タブ グループの
|
タブの Position、InnerPosition、OuterPosition | タブ グループの描画可能領域を基準とするタブのサイズと位置を表す [left bottom width height] の形式の 4 要素ベクトル、タブ グループの描画可能領域に境界とタイトルは "含まない" | タブ グループの描画可能領域 (青の実線) を基準とする、タブの
| タブ グループの描画可能領域を基準とするタブのサイズと位置を表す [left bottom width height] の形式の 4 要素ベクトル、タブ グループの描画可能領域に境界とタイトルを "含む" | タブ グループの描画可能領域 (青の実線) を基準とする、タブの
|
アプリのレイアウトが変わる場合は、次のようにコードを更新することを検討してください。
タブ グループの
InnerPosition— タブ グループのInnerPositionプロパティへの参照をタブ グループのPositionプロパティに置き換えて、境界とタブのタイトルを含むタブ グループのサイズと位置を使用します。タブの
Position、InnerPosition、OuterPosition— 位置ベクトルの最初の 2 つの要素への参照を置き換えて、タブのタイトルが占める左または下の領域を代わりに使用します。たとえば、アプリにTabLocationの値が'left'のタブ グループが含まれ、そのタブ グループ内のタブのPositionプロパティを参照している場合、その参照をタブ グループの境界とタブの描画可能領域の間の水平距離に置き換えます。
R2020a 以降、コンテキスト メニューをグラフィックス オブジェクトまたは UI コンポーネントに割り当てる UIContextMenu プロパティの使用は推奨されなくなりました。代わりに、ContextMenu プロパティを使用してください。プロパティ値は同じです。
現在のところ、UIContextMenu プロパティのサポートを削除する予定はありません。ただし、UIContextMenu プロパティは、グラフィカル オブジェクトまたは UI コンポーネントで関数 get を呼び出して返されるリストに表示されなくなります。
R2018b 以降、UI コンポーネントのツールヒントを指定する TooltipString プロパティの使用は推奨されなくなりました。代わりに、Tooltip プロパティを使用してください。プロパティ値は同じです。
現在のところ、TooltipString プロパティのサポートを削除する予定はありません。ただし、TooltipString プロパティは、UI コンポーネントで関数 get を呼び出して返されるリストに表示されなくなります。
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)













