このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
Spinner のプロパティ
スピナーの外観と動作の制御
スピナーは、有限集合から数値を選択するための UI コンポーネントです。プロパティがスピナーの外観と動作を制御します。ドット表記を使用して、特定のオブジェクトとプロパティを参照します。
fig = uifigure; s = uispinner(fig); s.Value = 20;
値
Value
— スピナーの値
0 (既定値) | 数値
スピナーの値。数値として指定します。
アプリ ユーザーがスピナーに入力した値は文字ベクトルです。アプリ ユーザーが Enter キーを押すか、フォーカスを変更すると、アプリ ユーザーが入力した値が MATLAB® により倍精度数に変換されます。
MATLAB は、次の場合に値を受け入れません。
文字ベクトルをスカラー数に変換できない場合。
値が NaN、空白または複素数である場合。
値が数式である場合 (例:
1+2
)。値が、
Limits
プロパティで指定された値の範囲外である場合。
MATLAB がアプリ ユーザーの入力値を受け取らない場合、値の要件を説明するツールヒントが表示されます。スピナーはただちに前の値に戻り、ValueChangedFcn
は実行されません。
例: 10
データ型: double
Limits
— スピナーの最小値と最大値
[-Inf Inf]
(既定値) | 2 要素数値配列
スピナーの最小値と最大値。2 要素の数値配列として指定します。最初の値は、2 番目の値より小さくなければなりません。配列の要素を -Inf
または Inf
に設定すると、最小値または最大値がそれぞれ指定されません。
Limits
を変更したことにより Value
プロパティが新しい範囲の外になる場合、MATLAB は Value
プロパティを新しい範囲内の値に設定します。たとえば、Limits
プロパティが [0 100]
で、Value
プロパティが 20 だとします。Limits
プロパティが [50 100]
に変更された場合、MATLAB は Value
プロパティを 50 に設定します (LowerLimitInclusive
値が 'on'
であると仮定)。
例: [-Inf 200]
例: [-100 Inf]
例: [-100 200]
データ型: double
Step
— 値をインクリメントまたはデクリメントする量
1
(既定値) | 数値スカラー
アプリ ユーザーが上下の矢印を押したときに、Value
プロパティ値がそれぞれインクリメントまたはデクリメントする量。
RoundFractionalValues
— 小数値の丸め
'off'
(既定値) | on/off logical 値
アプリ ユーザーによって入力された小数値の丸め。'on'
または 'off'
、もしくは数値または logical 1
(true
) または 0
(false
) として指定します。'on'
の値は true
と等価であり、'off'
は false
と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState
型の on/off logical 値として格納されます。
'on'
— 丸めの結果が有効な値になる場合、MATLAB は値を丸めてValueChangedFcn
コールバックを実行します。結果の値がLimits
の上下の範囲外になる場合、MATLAB はLimits
の範囲内の最も近い値に丸めてからコールバックを実行します。'off'
— MATLAB は小数値を 0 または正の整数に丸めません。
RoundFractionalValues
プロパティ値がプログラムにより 'off'
から 'on'
に変更された場合、MATLAB は次の規則を適用します。
既存の値を丸めた結果の整数が
Limits
プロパティで指定された範囲内になる場合、MATLAB は既存の値を正方向に丸めます。既存の値を丸めた結果の整数が下限値より小さくなる場合、MATLAB は既存の値を正方向に丸めます。
既存の値を丸めた結果の整数が上限値より大きくなる場合、MATLAB は既存の値を負方向に丸めます。
範囲内に有効な整数が存在しないように設定されている場合、MATLAB は
RoundFractionalValues
プロパティ値を'off'
に戻してエラー メッセージを表示します。
ValueDisplayFormat
— 値の表示形式
'%11.4g'
(既定値) | 文字ベクトル | string スカラー
値の表示形式。文字ベクトルまたは string スカラーとして指定します。
MATLAB は sprintf
を使用して、指定された形式を使用して値を表示します。
テキストと書式演算子を混在させることができます。以下に例を示します。
spin = uispinner('ValueDisplayFormat','%.0f MS/s');
結果としてスピナー コンポーネントは次のようになります。
アプリ ユーザーがスピナーのフィールドをクリックすると、フィールドにはテキストを除いた値が表示されます。
サポートされている書式演算子の詳細なリストについては、sprintf
を参照してください。
LowerLimitInclusive
— 下限値を含めるかどうか
'on'
(既定値) | on/off logical 値
下限値を含めるかどうか。'on'
または 'off'
、もしくは数値または logical 1
(true
) または 0
(false
) として指定します。'on'
の値は true
と等価であり、'off'
は false
と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState
型の on/off logical 値として格納されます。
'on'
— 値は下限値以上でなければなりません。'off'
— 値は下限値より大きくなければなりません。
UpperLimitInclusive
— 上限値を含めるかどうか
'on'
(既定値) | on/off logical 値
上限値を含めるかどうか。'on'
または 'off'
、もしくは数値または logical 1
(true
) または 0
(false
) として指定します。'on'
の値は true
と等価であり、'off'
は false
と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState
型の on/off logical 値として格納されます。
'on'
— 値は上限値以下でなければなりません。'off'
— 値は上限値より小さくなければなりません。
たとえば、数値入力を 0 から 1 まで (0 と 1 を除く) にする場合は、次のすべてを行います。
Limits
プロパティ値を[0 1]
に設定します。UpperLimitInclusive
プロパティを'off'
に設定します。LowerLimitInclusive
プロパティを'off'
に設定します。
フォントと色
FontName
— フォント名
システムでサポートされているフォントの名前
フォント名。システムでサポートされているフォント名として指定します。既定のフォントは、特定のオペレーティング システムとロケールによって異なります。
指定したフォントが利用できない場合、MATLAB は、アプリが実行中のシステムで利用可能なフォントから最もよく一致するフォントを使用します。
例: 'Arial'
FontSize
— フォント サイズ
正の数値
フォント サイズ。正の数値として指定します。測定単位はピクセルです。既定のフォント サイズは、特定のオペレーティング システムとロケールによって異なります。
例: 14
FontWeight
— フォントの太さ
'normal'
(既定値) | 'bold'
フォントの太さ。次のいずれかの値として指定します。
'normal'
— 各フォントで定義されている既定の太さ'bold'
—'normal'
よりも太い文字
すべてのフォントに太字フォントがあるとは限りません。太字がないフォントの場合、'bold'
を指定すると標準フォントの太さになります。
FontAngle
— フォントの角度
'normal'
(既定値) | 'italic'
フォントの角度。'normal'
または 'italic'
として指定します。すべてのフォントにイタリックのフォントの角度があるわけではありません。イタリックがないフォントの場合、'italic'
を指定すると標準フォントの角度になります。
FontColor
— フォントの色
[0 0 0]
(既定値) | RGB 3 成分 | 16 進数カラー コード | 'r'
| 'g'
| 'b'
| ...
フォントの色。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" |
MATLAB の多くのタイプのプロットで使用されている既定の色の RGB 3 成分および 16 進数カラー コードを次に示します。
RGB 3 成分 | 16 進数カラー コード | 外観 |
---|---|---|
[0 0.4470 0.7410] | "#0072BD" | |
[0.8500 0.3250 0.0980] | "#D95319" | |
[0.9290 0.6940 0.1250] | "#EDB120" | |
[0.4940 0.1840 0.5560] | "#7E2F8E" | |
[0.4660 0.6740 0.1880] | "#77AC30" | |
[0.3010 0.7450 0.9330] | "#4DBEEE" | |
[0.6350 0.0780 0.1840] | "#A2142F" |
BackgroundColor
— 背景色
[1 1 1]
(既定値) | RGB 3 成分 | 16 進数カラー コード | 'r'
| 'g'
| 'b'
| ...
背景色。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" |
MATLAB の多くのタイプのプロットで使用されている既定の色の RGB 3 成分および 16 進数カラー コードを次に示します。
RGB 3 成分 | 16 進数カラー コード | 外観 |
---|---|---|
[0 0.4470 0.7410] | "#0072BD" | |
[0.8500 0.3250 0.0980] | "#D95319" | |
[0.9290 0.6940 0.1250] | "#EDB120" | |
[0.4940 0.1840 0.5560] | "#7E2F8E" | |
[0.4660 0.6740 0.1880] | "#77AC30" | |
[0.3010 0.7450 0.9330] | "#4DBEEE" | |
[0.6350 0.0780 0.1840] | "#A2142F" |
対話機能
Visible
— 可視性の状態
'on'
(既定値) | on/off logical 値
可視性の状態。'on'
または 'off'
、もしくは数値または logical 1
(true
) または 0
(false
) として指定します。'on'
の値は true
と等価であり、'off'
は false
と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState
型の on/off logical 値として格納されます。
'on'
— オブジェクトを表示します。'off'
— オブジェクトを削除せずに非表示にします。非表示の UI コンポーネントのプロパティには引き続きアクセスできます。
アプリの起動を高速化するには、起動時に表示する必要のないすべての UI コンポーネントの Visible
プロパティを 'off'
に設定します。
Editable
— スピナーの編集可否
'on'
(既定値) | on/off logical 値
スピナーの編集可否。'on'
または 'off'
、もしくは数値または logical 1
(true
) または 0
(false
) として指定します。'on'
の値は true
と等価であり、'off'
は false
と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState
型の on/off logical 値として格納されます。
このプロパティは Enable
プロパティ値と組み合わせて使用して、コンポーネントがアプリ ユーザーの入力に応答する場合とその応答方法を決定します。
スピナーを編集可能にし、矢印ボタンを操作可能にして、関連するコールバックをトリガー可能にするには、
Enable
プロパティ値とEditable
プロパティ値の両方を'on'
に設定します。スピナーを編集不可にし、ただし、矢印ボタンを操作可能にするには、
Editable
プロパティを'off'
に、Enable
プロパティを'on'
に設定します。スピナーを編集不可にして、矢印ボタンを操作不可にするには、
Editable
プロパティを'off'
に、Enable
プロパティを'off'
に設定します。
Enable
— スピナーの操作可能状態
'on'
(既定値) | on/off logical 値
スピナーの操作可能状態。'on'
または 'off'
、もしくは数値または logical 1
(true
) または 0
(false
) として指定します。'on'
の値は true
と等価であり、'off'
は false
と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState
型の on/off logical 値として格納されます。
このプロパティは Editable
プロパティ値と組み合わせて使用して、コンポーネントがアプリ ユーザーの入力に応答する場合とその応答方法を決定します。
スピナーを編集可能にし、矢印ボタンを操作可能にして、関連するコールバックをトリガー可能にするには、
Enable
プロパティ値とEditable
プロパティ値の両方を'on'
に設定します。スピナーを編集不可にし、ただし、矢印ボタンを操作可能にするには、
Editable
プロパティを'off'
に、Enable
プロパティを'on'
に設定します。スピナーを編集不可にして、矢印ボタンを操作不可にするには、
Editable
プロパティを'off'
に、Enable
プロパティを'off'
に設定します。
Tooltip
— ツールヒント
''
(既定値) | 文字ベクトル | 文字ベクトルの cell 配列 | string 配列 | 1 次元の categorical 配列
ツールヒント。文字ベクトル、文字ベクトルの cell 配列、string 配列、または 1 次元の categorical 配列として指定します。このプロパティを使用して、実行時にユーザーがポインターをコンポーネントに合わせるとメッセージが表示されるようにします。コンポーネントが無効になっている場合でも、ツールヒントは表示されます。複数行のテキストを表示するには、文字ベクトルの cell 配列または string 配列を指定します。配列の各要素は、テキストの各行になります。このプロパティを categorical 配列として指定した場合、MATLAB はカテゴリの完全なセットではなく、配列内の値を使用します。
ContextMenu
— コンテキスト メニュー
空の GraphicsPlaceholder
配列 (既定値) | ContextMenu
オブジェクト
コンテキスト メニュー。関数 uicontextmenu
を使用して作成された ContextMenu
オブジェクトとして指定します。このプロパティは、コンポーネントを右クリックしたときにコンテキスト メニューを表示するために使用します。
位置
Position
— スピナーの位置とサイズ
[100 100 100 22]
(既定値) | [left bottom width height]
親コンテナーを基準にしたスピナーの位置とサイズ。ベクトル [left bottom width height]
として指定します。次の表で、ベクトルの各要素について説明します。
要素 | 説明 |
---|---|
left | 親コンテナーの内側左端からスピナーの外側左端までの距離 |
bottom | 親コンテナーの内側下端からスピナーの外側下端までの距離 |
width | スピナーの外側の右端と左端の間の距離 |
height | スピナーの外側の上端と下端の間の距離 |
すべての測定単位はピクセルです。
Position
の値の基準は、親コンテナーの "描画可能領域" です。描画可能領域は、コンテナーの境界線の内側にある領域で、メニュー バーやタイトルなどの装飾が占める領域は含まれません。
例: [100 100 100 22]
InnerPosition
— スピナーの内側の位置とサイズ
[100 100 100 22]
(既定値) | [left bottom width height]
スピナーの内側の位置とサイズ。[left bottom width height]
として指定します。位置の値の基準は親コンテナーです。すべての測定単位はピクセルです。このプロパティ値は、Position
プロパティと同一です。
OuterPosition
— スピナーの外側の位置とサイズ
[100 100 100 22]]
(既定値) | [left bottom width height]
この プロパティ は読み取り専用です。
スピナーの外側の位置とサイズ。[left bottom width height]
として返されます。位置の値の基準は親コンテナーです。すべての測定単位はピクセルです。このプロパティ値は、Position
プロパティと同一です。
HorizontalAlignment
— スピナー内の数値の水平方向の配置
'right'
(既定値) | 'left'
| 'center'
スピナー内の数値の水平方向の配置。次のように指定します。
'right'
— 数値はスピナー内で右揃えされます。'left'
— 数値はスピナー内で左揃えされます。'center'
— 数値はスピナー内で中央揃えされます。
Layout
— レイアウト オプション
空の LayoutOptions
配列 (既定値) | GridLayoutOptions
オブジェクト
レイアウト オプション。GridLayoutOptions
オブジェクトとして指定します。このプロパティは、グリッド レイアウト コンテナーの子であるコンポーネントのオプションを指定します。コンポーネントがグリッド レイアウト コンテナーの子ではない場合 (たとえば、Figure またはパネルの子である場合) は、このプロパティは空で、効果はありません。しかし、コンポーネントがグリッド レイアウト コンテナーの子である場合は、GridLayoutOptions
オブジェクトの Row
プロパティおよび Column
プロパティを設定して、グリッドの目的の行と列にコンポーネントを配置することができます。
たとえば、以下のコードは、スピナーをその親グリッドの 3 行目の 2 列目に配置します。
g = uigridlayout([4 3]); s = uispinner(g); s.Layout.Row = 3; s.Layout.Column = 2;
スピナーが複数の行または列にまたがるようにするには、Row
または Column
プロパティを 2 要素ベクトルとして指定します。たとえば、次のスピナーは 2
列目から 3
列目にまたがります。
s.Layout.Column = [2 3];
コールバック
ValueChangedFcn
— 値が変更されたときのコールバック
''
(既定値) | 関数ハンドル | cell 配列 | 文字ベクトル
値が変更されたときのコールバック。次の値のいずれかとして指定します。
関数ハンドル。
最初の要素が関数ハンドルである cell 配列。cell 配列内のその後の要素はコールバック関数に渡される引数です。
有効な MATLAB 式を含む文字ベクトル (非推奨)。MATLAB は、この式をベース ワークスペースで評価します。
このコールバックは、フォーカスを変更するか、スピナーの値の変更後に Enter キーを押すと実行されます。スピナーの値を変更するために値を入力するか矢印キーを押すかは関係ありません。このコールバックは、スピナーの値がプログラムにより変更される場合には実行されません。
このコールバック関数は、ユーザーのスピナー操作に関する特定の情報にアクセスできます。MATLAB は、この情報を ValueChangedData
オブジェクトに格納して、2 番目の引数としてコールバック関数に渡します。App Designer では、引数は event
と呼ばれます。ドット表記を使用して、オブジェクトのプロパティをクエリできます。たとえば、event.PreviousValue
はスピナーの直前の値を返します。ValueChangedData
オブジェクトは、文字ベクトルとして指定されているコールバック関数では使用できません。
次の表に、ValueChangedData
オブジェクトのプロパティを示します。
プロパティ | 値 |
---|---|
Value | アプリ ユーザーによる最新操作の後のスピナーの値 |
PreviousValue | アプリ ユーザーによる最新操作の前のスピナーの値 |
Source | コールバックを実行するコンポーネント |
EventName | 'ValueChanged' |
コールバックの記述の詳細については、App Designer のコールバックを参照してください。
ValueChangingFcn
— 値が変更中のコールバック
''
(既定値) | 関数ハンドル | cell 配列 | 文字ベクトル
値が変更中のコールバック。次の値のいずれかとして指定します。
関数ハンドル。
最初の要素が関数ハンドルである cell 配列。cell 配列内のその後の要素はコールバック関数に渡される引数です。
有効な MATLAB 式を含む文字ベクトル (非推奨)。MATLAB は、この式をベース ワークスペースで評価します。
このコールバック関数は、スピナーの上矢印または下矢印をクリックしたままホールドすると実行されます。Value
プロパティがプログラムにより変更される場合には実行されません。
このコールバック関数は、ユーザーのスピナー操作に関する特定の情報にアクセスできます。MATLAB は、この情報を ValueChangingData
オブジェクトに格納して、2 番目の引数としてコールバック関数に渡します。App Designer では、引数は event
と呼ばれます。ドット表記を使用して、オブジェクトのプロパティをクエリできます。たとえば、event.Value
はスピナーの現在の値を返します。ValueChangingData
オブジェクトは、文字ベクトルとして指定されているコールバック関数では使用できません。
次の表に、ValueChangingData
オブジェクトのプロパティを示します。
プロパティ | 値 |
---|---|
Value | アプリ ユーザーが操作中のスピナーの現在の値 |
Source | コールバックを実行するコンポーネント |
EventName | 'ValueChanging' |
Spinner
の Value
プロパティは、アプリ ユーザーが矢印キーを離すまで更新されません。したがって、矢印キーが押されている間の値を取得するには、ValueChangingData
オブジェクトの Value
プロパティをコードで取得しなければなりません。
メモ
Spinner
オブジェクトの Value
プロパティをそれ自体の ValueChangingFcn
コールバック内から更新しないでください。予期しない動作を引き起こす可能性があります。ユーザー入力に応じてスピナーの値を更新するには、代わりに ValueChangedFcn
コールバックを使用します。
コールバックは次のように実行されます。
アプリ ユーザーがスピナーの上矢印または下矢印をクリックすると、コールバックが 1 回実行されます。たとえば、スピナーの値が 2 で、
Step
の値が 1 だとします。アプリ ユーザーが上矢印をクリックすると、コールバックが実行されます。アプリ ユーザーがスピナーの上矢印または下矢印を押したままにすると、コールバックが繰り返し実行されます。たとえば、アプリ ユーザーが上矢印をクリックして押したままにした場合、アプリ ユーザーが上矢印を離すまでコールバックが繰り返し実行されます。
コールバックの記述の詳細については、App Designer のコールバックを参照してください。
CreateFcn
— 作成関数
''
(既定値) | 関数ハンドル | cell 配列 | 文字ベクトル
オブジェクト作成関数。次の値のいずれかとして指定します。
関数ハンドル。
最初の要素が関数ハンドルである cell 配列。cell 配列内のその後の要素はコールバック関数に渡される引数です。
有効な MATLAB 式を含む文字ベクトル (非推奨)。MATLAB は、この式をベース ワークスペースで評価します。
コールバックを関数ハンドル、cell 配列、または文字ベクトルとして指定する方法の詳細については、App Designer のコールバックを参照してください。
このプロパティは、MATLAB がオブジェクトを作成するときに実行されるコールバック関数を指定します。MATLAB は CreateFcn
コールバックを実行する前に、すべてのプロパティ値を初期化します。CreateFcn
プロパティを指定しない場合、MATLAB は既定の作成関数を実行します。
既存のコンポーネントに CreateFcn
プロパティを設定しても効果はありません。
このプロパティを関数ハンドルまたは cell 配列として指定した場合、コールバック関数の最初の引数を使用して、作成中のオブジェクトにアクセスできます。それ以外の場合は、関数 gcbo
を使用してオブジェクトにアクセスします。
DeleteFcn
— 削除関数
''
(既定値) | 関数ハンドル | cell 配列 | 文字ベクトル
オブジェクト削除関数。次の値のいずれかとして指定します。
関数ハンドル。
最初の要素が関数ハンドルである cell 配列。cell 配列内のその後の要素はコールバック関数に渡される引数です。
有効な MATLAB 式を含む文字ベクトル (非推奨)。MATLAB は、この式をベース ワークスペースで評価します。
コールバックを関数ハンドル、cell 配列、または文字ベクトルとして指定する方法の詳細については、App Designer のコールバックを参照してください。
このプロパティは、MATLAB がオブジェクトを削除するときに実行されるコールバック関数を指定します。MATLAB は、オブジェクトのプロパティを破棄する前に DeleteFcn
コールバックを実行します。DeleteFcn
プロパティを指定しない場合、MATLAB は既定の削除関数を実行します。
このプロパティを関数ハンドルまたは cell 配列として指定した場合、コールバック関数の最初の引数を使用して、削除されるオブジェクトにアクセスできます。それ以外の場合は、関数 gcbo
を使用してオブジェクトにアクセスします。
コールバック実行制御
Interruptible
— コールバックの割り込み
'on'
(既定値) | on/off logical 値
コールバックの割り込み。'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
プロパティの値にかかわらずスケジュールに従ってコールバックが実行されます。
BusyAction
— コールバック キューイング
'queue'
(既定値) | 'cancel'
コールバック キューイング。'queue'
または 'cancel'
として指定します。BusyAction
プロパティは MATLAB による割り込みコールバックの実行の処理方法を決定します。次の 2 つのコールバックの状態について考慮する必要があります。
"実行中" コールバックは、現在実行しているコールバックです。
"割り込み" コールバックは、実行中のコールバックに割り込もうとするコールバックです。
BusyAction
プロパティによってコールバック キューイングの動作が決まるのは、次の両方の条件を満たす場合のみです。
これらの条件に当てはまる場合、割り込みコールバックを所有するオブジェクトの BusyAction
プロパティに応じて MATLAB による割り込みコールバックの処理方法が決まります。BusyAction
プロパティは次の値を取ることができます。
'queue'
— 割り込みコールバックをキューに入れ、実行中のコールバックが終了した後に処理されるようにします。'cancel'
— 割り込みコールバックを実行しません。
BeingDeleted
— 削除状態
on/off logical 値
この プロパティ は読み取り専用です。
削除状態。matlab.lang.OnOffSwitchState
型の on/off logical 値として返されます。
MATLAB は、DeleteFcn
コールバックが実行を開始すると、BeingDeleted
プロパティを 'on'
に設定します。コンポーネント オブジェクトが存在しなくなるまで BeingDeleted
プロパティは 'on'
に設定されたままです。
クエリや変更の前にオブジェクトが削除されようとしていないか確認するために BeingDeleted
プロパティの値をチェックします。
親/子
Parent
— 親コンテナー
Figure
オブジェクト (既定値) | Panel
オブジェクト | Tab
オブジェクト | ButtonGroup
オブジェクト | GridLayout
オブジェクト
親コンテナー。関数 uifigure
を使用して作成された Figure
オブジェクト、またはその子コンテナー (Tab
、Panel
、ButtonGroup
または GridLayout
) のいずれかとして指定します。コンテナーが指定されていない場合、MATLAB は関数 uifigure
を呼び出し、親コンテナーとして使用される新しい Figure
オブジェクトを作成します。
HandleVisibility
— オブジェクト ハンドルの可視性
'on'
(既定値) | 'callback'
| 'off'
オブジェクト ハンドルの可視性。'on'
、'callback'
または 'off'
として指定します。
このプロパティは、オブジェクトの親がもつ子のリストにおけるそのオブジェクトの可視性を制御します。オブジェクトがその親オブジェクトのリストで、子として可視できない場合、オブジェクト階層の検索またはプロパティのクエリによってオブジェクトを取得する関数は、そのオブジェクトを返しません。これらの関数には、get
、findobj
、clf
および close
が含まれます。オブジェクトは参照できない場合も有効です。オブジェクトにアクセスできる場合は、そのプロパティを設定および取得して、それをオブジェクトに作用する任意の関数に渡すことができます。
HandleVisibility の値 | 説明 |
---|---|
'on' | オブジェクトは常に参照できます。 |
'callback' | オブジェクトはコールバック内から、あるいはコールバックにより呼び出される関数から参照できます。しかし、コマンド ラインから呼び出される関数からは参照できません。このオプションを使用すると、コマンド ラインからのオブジェクトへのアクセスがブロックされますが、コールバック関数からのアクセスは許可されます。 |
'off' | オブジェクトは常に参照できません。このオプションは、他の関数による UI の意図しない変更を防止するために役立ちます。HandleVisibility を 'off' に設定すると、その関数の実行中にオブジェクトが一時的に非表示になります。 |
識別子
Type
— グラフィックス オブジェクトのタイプ
'uispinner'
この プロパティ は読み取り専用です。
グラフィックス オブジェクトのタイプ。'uispinner'
として返されます。
Tag
— オブジェクト識別子
''
(既定値) | 文字ベクトル | string スカラー
オブジェクト識別子。文字ベクトルまたは string スカラーとして指定します。オブジェクトの識別子として機能する一意の Tag
値を指定できます。コードの他の部分からオブジェクトにアクセスする必要がある場合、関数 findobj
を使用して Tag
値に基づいてオブジェクトを検索できます。
UserData
— ユーザー データ
[]
(既定値) | 配列
ユーザー データ。任意の MATLAB 配列として指定します。たとえば、スカラー、ベクトル、行列、cell 配列、文字配列、table、または構造体を指定できます。このプロパティを使用して、任意のデータをオブジェクトに保存します。
App Designer を使用している場合は、UserData
プロパティを使用する代わりに、アプリでパブリック プロパティまたはプライベート プロパティを作成してデータを共有します。詳細については、App Designer アプリ内でのデータの共有を参照してください。
バージョン履歴
R2016a で導入
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)