メインコンテンツ

Tab

タブ UI コンテナー

  • Tab UI container

説明

タブ 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"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

次の表に、ライト テーマとダーク テーマでのプロットの既定のカラー パレットを示します。

パレットパレットの色

"gem" — ライト テーマの既定値

R2025a より前: ほとんどのプロットで、これらの色が既定で使用されます。

Sample of the "gem" color palette

"glow" — ダーク テーマの既定値

Sample of the "glow" color palette

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"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

次の表に、ライト テーマとダーク テーマでのプロットの既定のカラー パレットを示します。

パレットパレットの色

"gem" — ライト テーマの既定値

R2025a より前: ほとんどのプロットで、これらの色が既定で使用されます。

Sample of the "gem" color palette

"glow" — ダーク テーマの既定値

Sample of the "glow" color palette

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 ベースのアプリの既定)

これらの単位は親コンテナーを基準として正規化されます。コンテナーの左下隅が (0,0) で、右上隅が (1,1) になります。

'inches'インチ。
'centimeters'センチメートル。
'points'ポイント。1 ポイントは 1/72 インチです。
'characters'

これらの単位は、グラフィックス ルート オブジェクトの既定の uicontrol フォントを基にしています。

  • 文字の幅 = 文字 x の幅。

  • 文字の高さ = 2 行のテキストのベースライン間の距離。

既定の uicontrol フォントにアクセスするには、get(groot,'defaultuicontrolFontName') または set(groot,'defaultuicontrolFontName') を使用します。

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 は、コールバック キューを処理するコマンドを実行するたびにコールバックの割り込み動作を判別します。これらのコマンドには、drawnowfigureuifiguregetframewaitforpause があります。

実行中コールバックにこれらのコマンドが含まれていない場合、割り込みは発生しません。MATLAB は、実行中コールバックの実行を先に終了させ、その後に割り込みコールバックを実行します。

実行中コールバックにこれらのいずれかのコマンドが含まれている場合、実行中コールバックを所有するオブジェクトの Interruptible プロパティに応じて割り込みが発生するかどうかが決まります。

  • Interruptible の値が 'off' の場合、割り込みは発生しません。代わりに、割り込みコールバックを所有するオブジェクトの BusyAction プロパティに応じて、割り込みコールバックが破棄されるかコールバック キューに追加されるかが決まります。

  • Interruptible の値が 'on' の場合、割り込みが発生します。MATLAB は、コールバック キューの次回処理時に、実行中コールバックの実行を停止し、割り込みコールバックを実行します。割り込みコールバックが完了した後、MATLAB は実行中だったコールバックの実行を再開します。

メモ

コールバックの割り込みと実行は、以下の状況では動作が異なります。

  • 割り込みコールバックが DeleteFcnCloseRequestFcn または SizeChangedFcn コールバックの場合、Interruptible プロパティの値にかかわらず割り込みが発生します。

  • 実行中のコールバックが関数 waitfor を現在実行している場合、Interruptible プロパティの値にかかわらず割り込みが発生します。

  • 割り込みコールバックが Timer オブジェクトで所有されている場合、Interruptible プロパティの値にかかわらずスケジュールに従ってコールバックが実行されます。

メモ

MATLAB は、割り込みが発生したときにプロパティの状態や表示を保存しません。たとえば、gca コマンドや gcf コマンドから返されたオブジェクトは、別のコールバックを実行するときに変更されている可能性があります。

コールバック キューイング。'queue' または 'cancel' として指定します。BusyAction プロパティは MATLAB による割り込みコールバックの実行の処理方法を決定します。次の 2 つのコールバックの状態について考慮する必要があります。

  • "実行中" コールバックは、現在実行しているコールバックです。

  • "割り込み" コールバックは、実行中のコールバックに割り込もうとするコールバックです。

BusyAction プロパティによってコールバック キューイングの動作が決まるのは、次の両方の条件を満たす場合のみです。

  • 実行中コールバックに drawnowfigureuifiguregetframewaitforpause などのコールバック キューを処理するコマンドが含まれている。

  • 実行中コールバックを所有するオブジェクトの Interruptible プロパティの値が 'off' である。

これらの条件に当てはまる場合、割り込みコールバックを所有するオブジェクトの 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' として指定します。

このプロパティは、オブジェクトの親がもつ子のリストにおけるそのオブジェクトの可視性を制御します。オブジェクトがその親オブジェクトのリストで、子として可視できない場合、オブジェクト階層の検索またはプロパティのクエリによってオブジェクトを取得する関数は、そのオブジェクトを返しません。これらの関数には、getfindobjclf および close が含まれます。オブジェクトは参照できない場合も有効です。オブジェクトにアクセスできる場合は、そのプロパティを設定および取得して、それをオブジェクトに作用する任意の関数に渡すことができます。

HandleVisibility の値説明
'on' オブジェクトは常に参照できます。
'callback'オブジェクトはコールバック内から、あるいはコールバックにより呼び出される関数から参照できます。しかし、コマンド ラインから呼び出される関数からは参照できません。このオプションを使用すると、コマンド ラインからのオブジェクトへのアクセスがブロックされますが、コールバック関数からのアクセスは許可されます。
'off'オブジェクトは常に参照できません。このオプションは、他の関数による UI の意図しない変更を防止するために役立ちます。HandleVisibility'off' に設定すると、その関数の実行中にオブジェクトが一時的に非表示になります。

識別子

この プロパティ は読み取り専用です。

グラフィックス オブジェクトのタイプ。'uitab' として返されます。

オブジェクト識別子。文字ベクトルまたは string スカラーとして指定します。オブジェクトの識別子として機能する一意の Tag 値を指定できます。コードの他の部分からオブジェクトにアクセスする必要がある場合、関数 findobj を使用して Tag 値に基づいてオブジェクトを検索できます。

ユーザー データ。任意の MATLAB 配列として指定します。たとえば、スカラー、ベクトル、行列、cell 配列、文字配列、table、または構造体を指定できます。このプロパティを使用して、任意のデータをオブジェクトに保存します。

App Designer を使用している場合は、UserData プロパティを使用する代わりに、アプリでパブリック プロパティまたはプライベート プロパティを作成してデータを共有します。詳細については、App Designer アプリ内でのデータの共有を参照してください。

オブジェクト関数

scrollUI コンポーネント内の位置にスクロール
isInScrollViewDetermine 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]);

Figure contains an object of type uitabgroup.

[データ] タブのタイトルのテキストの色をクエリします。

c = t1.ForegroundColor
c = 1×3

    0.1294    0.1294    0.1294

タブの背景色に合わせてテキストの色を更新します。

t1.ForegroundColor = t1.BackgroundColor;

Figure contains an object of type uitabgroup.

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');

UI figure window with a tab group with one tab. The UI components in the tab are partially in view and the tab has no scroll bar.

タブの Scrollable プロパティを 'on' に設定して、スクロールを有効にします。既定で、スクロール ボックスが上部に表示されます。

t.Scrollable = 'on';

UI figure window with a tab group with one tab. The tab has a scroll bar that is scrolled to the top.

新規スクリプトで、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 で導入

すべて展開する

参考

関数

プロパティ

ツール