Main Content

matlab.system.display.SectionGroup クラス

パッケージ: matlab.system.display

MATLAB System ブロックの [ブロック パラメーター] ダイアログ ボックスでプロパティの入れ子にされたグループを作成する

説明

getPropertyGroupsImpl メソッド内で matlab.system.display.SectionGroup クラスを使用して、MATLAB System ブロックの [ブロック パラメーター] ダイアログ ボックス用に作成したカスタム要素をグループ化します。セクション グループには、matlab.system.display.Section クラスを使用して作成したセクション、System object™ プロパティのグループ、および matlab.system.display.Action クラスを使用して作成したカスタム ボタンを含めることができます。

セクションと共にセクション グループを使用することで、ダイアログ ボックス内にプロパティの入れ子にされたグループを作成できます。たとえば、セクション グループで [ブロック パラメーター] ダイアログ ボックス内にタブを実装し、そのタブ内の 1 つ以上のセクションに折りたたみ可能なパネルを作成できます。

クラス属性

Sealed
true

クラス属性の詳細については、クラスの属性を参照してください。

作成

説明

sectGrp = matlab.system.display.SectionGroup(Name,Value) は、1 つ以上の名前と値の引数を使用して定義されたプロパティが含まれたセクション グループを作成します。

sectGrp = matlab.system.display.SectionGroup(sysObj) は、System object sysObj に基づいて定義されたプロパティが含まれたセクション グループを作成します。

sectGrp = matlab.system.display.SectionGroup(sysObj,Name,Value) は、System object sysObj および 1 つ以上の名前と値の引数に基づいて定義されたプロパティが含まれたセクション グループを作成します。名前と値の引数を使用して指定した値により、System object に基づいて設定された値がオーバーライドされます。

入力引数

すべて展開する

MATLAB System ブロックの System object。System object として指定します。

System object を入力引数として指定すると、プロパティ グループのこれらのプロパティ値は System object から取得されます。

  • Title — System object の名前

  • PropertyList — System object のすべてのパブリック プロパティ

    この引数は mfilename("class") として指定できます。

プロパティ

すべて展開する

プロパティ グループ タイトル。string または文字ベクトルとして指定します。既定では、[ブロック パラメーター] ダイアログ ボックス内のセクションのタイトルは空の文字ベクトル ('') です。

例: "My Property Group"

属性:

GetAccess
public
SetAccess
public

データ型: string | char

プロパティ グループ タイトルのソース。次のオプションのいずれかとして指定します。

  • 'Property' — セクション タイトルはプロパティ グループの Title プロパティから取得されます。

  • 'Auto' — セクション タイトルは、コンストラクターの入力引数として指定された System object から取得されます。

属性:

GetAccess
public
SetAccess
public

データ型: string | char

プロパティ グループの説明。string または文字ベクトルとして指定します。既定では、説明は空の文字ベクトル ('') です。

説明は、[ブロック パラメーター] ダイアログ ボックスですべてのプロパティやセクションより上に表示されます。

例: "My section group description."

属性:

GetAccess
public
SetAccess
public

データ型: string | char

セクション グループの最上位レベル内で設定できるプロパティ。それぞれがプロパティの名前を定義する文字ベクトルの cell 配列として指定します。既定では、プロパティ リストは空の cell 配列 ({}) です。

System object をコンストラクターの入力引数として指定すると、名前と値の引数としてもプロパティ リストを指定して設定をオーバーライドしない限り、プロパティ リストは System object のすべてのパブリック プロパティに設定されます。

以下のタイプのプロパティは、[ブロック パラメーター] ダイアログ ボックス、および MATLAB® コマンド ウィンドウで表示される概要で表示できません。

  • 非表示のプロパティ

  • 抽象プロパティ

  • プライベート プロパティ

  • アクセスが保護されているプロパティ

  • 離散状態

  • 連続状態

[ブロック パラメーター] ダイアログ ボックスでは依存プロパティを表示できませんが、これらのプロパティは MATLAB コマンド ウィンドウで表示した System object の概要で表示されます。

例: {'Property1' 'Property2'}

属性:

GetAccess
public
SetAccess
public

データ型: cell

セクション グループに含めるセクション。matlab.system.display.Section クラスの 1 つ以上のインスタンスとして指定します。

属性:

GetAccess
public
SetAccess
public

データ型: matlab.system.display.Section

セクション グループのセクションのタイプ。matlab.system.display.SectionType 列挙クラスのメンバーとして指定します。

  • matlab.system.display.SectionType.tab — [ブロック パラメーター] ダイアログ ボックス内にセクション グループのタブを作成します。

  • matlab.system.display.SectionType.panel — [ブロック パラメーター] ダイアログ ボックス内にセクション グループのパネルを作成します。

  • matlab.system.display.SectionType.group — [ブロック パラメーター] ダイアログ ボックス内にセクション グループのタイトル付きのグループを作成します。

  • matlab.system.display.SectionType.collapsiblepanel — [ブロック パラメーター] ダイアログ ボックス内にセクション グループの折りたたみ可能なパネルを作成します。

属性:

GetAccess
public
SetAccess
public

データ型: matlab.system.display.SectionType

コンテナー内のプロンプトの整列を制御するオプション。logical true (1) または logical false (0) として指定します。

属性:

GetAccess
public
SetAccess
public

データ型: logical

すべて折りたたむ

System object のクラス定義ファイルで、getPropertyGroupsImpl メソッドを使用して、MATLAB System ブロックの [ブロック パラメーター] ダイアログ ボックスに 2 つのタブを定義します。各タブは、異なるプロパティ値を設定するためのアクセスを提供します。

classdef MultipleGroupsWithSectionGroup < matlab.System

    properties
        StartValue = 0
        EndValue = 10
        Threshold = 1
        BlockLimit = 55
    end

    properties(Nontunable)
        IC1 = 0
        IC2 = 10
        IC3 = 100
        UseThreshold (1,1) logical = true
    end
    
    methods (Static, Access = protected)
        function groups = getPropertyGroupsImpl
            alwaysSection = matlab.system.display.Section(...
                'Title','','PropertyList',{'BlockLimit'});
           
            initTab = matlab.system.display.SectionGroup(...
                'Title','Initial conditions', ...
                'PropertyList',{'IC1','IC2','IC3'},...
                'GroupType', matlab.system.display.SectionType.group);
            
            valueSection = matlab.system.display.Section(...
                'Title','Value parameters',...
                'PropertyList',{'StartValue','EndValue'},...
                'SectionType',...
                matlab.system.display.SectionType.collapsiblepanel);
            
            thresholdSection = matlab.system.display.Section(...
                'Title','Threshold parameters',...
                'PropertyList',{'Threshold','UseThreshold'},...
                'SectionType',...
                matlab.system.display.SectionType.collapsiblepanel);
            
            mainTab = matlab.system.display.SectionGroup(...
                'Title','Main', ...
                'Sections',[valueSection thresholdSection],...
                'GroupType',matlab.system.display.SectionType.group);
            
            groups = [alwaysSection mainTab initTab];
        end
    end
end

オブジェクトを MATLAB System ブロックに追加すると、ブロックの [ブロック パラメーター] ダイアログ ボックスには以下が含まれます。

  • 上部にあるヘッダー

  • 制限パラメーターのセクション

  • 値およびしきい値パラメーターの折りたたみ可能なパネルが含まれているメイン セクション グループ

  • 下部にある初期条件セクション

.

The Block Parameters dialog box for the MATLAB System block for the System object that contains the example code has the Value parameters collapsible panel expanded and the Threshold parameters collapsible panel collapsed. The Value parameters section includes text fields to set the Start Value and End Value parameters.

The Block Parameters dialog box for the MATLAB System block for the System object that contains the example code has the Value parameters panel collapsed and the Threshold parameters panel expanded. The Threshold parameters section includes a text field to set the Threshold parameter and a check box to set the Use threshold parameter.

バージョン履歴

R2013b で導入