Main Content

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

uislider

スライダーまたは範囲スライダー コンポーネントを作成する

説明

sld = uislider は、標準スライダーを新しい Figure ウィンドウ内に作成し、Slider オブジェクトを返します。MATLAB® は関数 uifigure を呼び出してこの Figure を作成します。

sld = uislider(style) は指定されたスタイルのスライダーを作成します。標準ツリーではなく、範囲スライダーを作成するには、style"range" に指定します。

sld = uislider(parent) は、指定された親コンテナー内にスライダーを作成します。親には、関数 uifigure を使用して作成された Figure オブジェクトか、またはその子コンテナーのいずれかを指定できます。

sld = uislider(parent,style) は、指定された親コンテナー内に指定されたスタイルのスライダーを作成します。

sld = uislider(___,Name,Value) は、前述の構文の入力引数の任意の組み合わせに加え、1 つ以上の名前と値の引数を使用して Slider プロパティを指定します。たとえば、uislider("Value",50) は値 50 を指定してスライダーを作成します。

すべて折りたたむ

UI Figure 内にスライダー コンポーネントを作成します。

fig = uifigure;
sld = uislider(fig);

Figure contains an object of type uislider.

UI Figure 内に範囲スライダーを作成します。

fig = uifigure;
sld = uislider(fig,"range");

Figure contains an object of type uirangeslider.

UI Figure 内に垂直スライダーを作成します。

fig = uifigure;
sld = uislider(fig,"Orientation","vertical");

Figure contains an object of type uislider.

UI Figure 内にスライダーを作成します。スライダーの値を 50 に設定します。

fig = uifigure;
sld = uislider(fig,"Value",50);

Figure contains an object of type uislider.

現在のスライダーの範囲を調べます。

limits = sld.Limits
limits = 1×2

     0   100

スライダーの範囲を変更し、値を 35 に設定します。

sld.Limits = [-50 50];
sld.Value = 35;

Figure contains an object of type uislider.

UI Figure 内にスライダーを作成します。

fig = uifigure;
sld = uislider(fig);

Figure contains an object of type uislider.

スライダーの外観をカスタマイズします。温度 (華氏の度数) に対応するように範囲および大目盛りを更新して、小目盛りを削除します。

sld.Limits = [32 212];
sld.MajorTicks = [32 100 150 212];
sld.MajorTickLabels = sld.MajorTicks + "°F";
sld.MinorTicks = [];

Figure contains an object of type uislider.

スライダーとゲージをもつアプリを作成します。アプリ ユーザーがスライダーのつまみを移動してマウス ボタンを離すと、ゲージの針がそのスライダー値を反映するように更新されます。

sliderApp.m という名前のファイルで、アプリを実装する関数を作成します。

  • UI Figure およびグリッド レイアウト マネージャーを作成してアプリをレイアウトします。

  • グリッド レイアウト マネージャーでゲージとスライダーを作成します。

  • スライダーの値に一致するようにゲージの値を変更する updateGauge という名前のコールバック関数を作成し、その関数をスライダーの ValueChangedFcn コールバック プロパティに割り当てます。コールバックの詳細については、プログラムで作成したアプリ用のコールバックの作成を参照してください。

function sliderApp
fig = uifigure("Position",[100 100 300 250]);
g = uigridlayout(fig);
g.RowHeight = {'1x','fit'};
g.ColumnWidth = {'1x','fit','1x'};

cg = uigauge(g);
cg.Layout.Row = 1;
cg.Layout.Column = [1 3];

sld = uislider(g, ...
    "ValueChangedFcn",@(src,event)updateGauge(src,event,cg));
sld.Layout.Row = 2;
sld.Layout.Column = 2;
end

function updateGauge(src,event,cg)
cg.Value = event.Value;
end

関数 sliderApp を実行し、スライダーのつまみを移動します。つまみを離すと、ゲージの値が更新されます。

sliderApp

Figure contains an object of type uigridlayout.

プロットと範囲スライダーをもつアプリを作成します。アプリ ユーザーがスライダーのいずれかのつまみを移動すると、プロットの影付き領域が更新され、範囲スライダーの値が反映されます。

rangeSliderApp.m という名前のファイルで、アプリを実装する関数を作成します。

  • UI Figure およびグリッド レイアウト マネージャーを作成してアプリをレイアウトします。

  • グリッド レイアウト マネージャーで UI 座標軸と範囲スライダーを作成します。UI 座標軸にデータをプロットし、塗りつぶし領域を作成してデータの一部を強調表示します。

  • 範囲スライダーの値に合わせて塗りつぶし領域の範囲を更新する updateRange という名前のコールバック関数を作成し、その関数を範囲スライダーの ValueChangingFcn コールバック プロパティに割り当てます。コールバックの詳細については、プログラムで作成したアプリ用のコールバックの作成を参照してください。

function rangeSliderApp
fig = uifigure;
g = uigridlayout(fig);
g.RowHeight = {'1x','fit'};
g.ColumnWidth = {'1x'};

ax = uiaxes(g);
plot(ax,peaks);
xr = xregion(ax,10,35);

sld = uislider(g,"range", ...
    "Limits",[0 50], ...
    "Value",[10 35]);

sld.ValueChangingFcn = @(src,event) updateRange(src,event,xr);
end

function updateRange(src,event,xr)
val = event.Value;
xr.Value = val;
end

関数 rangeSliderApp を実行し、スライダーのつまみを移動します。つまみのいずれかをドラッグすると、それに合わせて座標軸内の塗りつぶし領域が更新されます。

Plot and range slider in a UI figure window. The plot has a highlighted region with a range that matches the value of the range slider.

入力引数

すべて折りたたむ

スライダーのスタイル。次の値のいずれかとして指定します。

  • "slider" — 値を指定するための 1 つのつまみをもつ標準スライダー

  • "range" — 値の範囲を指定するための 2 つのつまみをもつ範囲スライダー

親コンテナー。関数 uifigure を使用して作成された Figure オブジェクト、またはその子コンテナー (TabPanelButtonGroup または GridLayout) のいずれかとして指定します。親コンテナーを指定しない場合、MATLAB は関数 uifigure を呼び出し、親コンテナーとして機能する新しい Figure オブジェクトを作成します。

名前と値の引数

引数のオプションのペアを Name1=Value1,...,NameN=ValueN として指定します。ここで Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後になければなりませんが、ペアの順序は重要ではありません。

例: uislider(Limits=[0 50]) は、スライダーの最小値を 0、スライダーの最大値を 50 に指定します。

R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name を引用符で囲みます。

例: uislider("Limits",[0 50]) は、スライダーの最小値を 0、スライダーの最大値を 50 に指定します。

スライダーのスタイルごとに異なる一連のプロパティがサポートされています。プロパティの完全なリストと各スタイルについての説明については、対応するプロパティのページを参照してください。

バージョン履歴

R2016a で導入

すべて展開する