Main Content

GUIDE レイアウト エリアへのコンポーネントの追加

メモ

GUIDE 環境は将来のリリースで削除される予定です。既存の GUIDE アプリは、GUIDE が削除された後も引き続き MATLAB® で動作しますが、GUIDE での編集はできません。

既存の GUIDE アプリを引き続き編集するには、将来の MATLAB リリースとの互換性維持に役立つ方法について、GUIDE の移行策を参照してください。新しいアプリを対話的に作成する場合は、代わりにApp Designer を使用したアプリ開発を参照してください。

コンポーネントの配置

レイアウト エディターの左側のコンポーネント パレットには、ユーザーの UI に追加できるコンポーネントを収容しています。

GUIDE レイアウト エリアにコンポーネントを配置し、各コンポーネントに一意の識別子を指定するには、次の手順に従います。

  1. パレットにコンポーネント名を表示します。

    1. MATLAB の [ホーム] タブで、[環境] セクションの [基本設定] をクリックします。

    2. [基本設定] ダイアログ ボックスの [GUIDE] をクリックします。

    3. [コンポーネント パレットに名前を表示] を選択し、[OK] をクリックします。

  2. ユーザーの設計に従い、レイアウト エリアにコンポーネントを配置します。

    • パレットからコンポーネントをドラッグして、レイアウト エリアにドロップします。

    • パレットのコンポーネントをクリックしてから、カーソルをレイアウト エリアに移動させます。カーソルが十字の形に変わります。コンポーネントを既定値のサイズで追加するには再びクリックします。あるいは、コンポーネントを追加するときにサイズを決めるには、クリックしながらドラッグします。

    いったん、レイアウト領域に UI コンポーネントを定義してから、それを選択すると、そのコンポーネントがプロパティ インスペクターに自動的に表示されます。プロパティ インスペクターが開いていないか、または表示されていない場合、コンポーネントをダブルクリックするとインスペクターが起動し、そのコンポーネントをフォーカスします。

    次の表に一覧表示されたコンポーネントは、さらに考慮すべきことがあります。詳細は、以下に記載されている節を参照してください。

    追加するコンポーネント説明
    パネルまたはボタン グループパネルまたはボタン グループへのコンポーネントの追加を参照。
    メニューGUIDE アプリのメニューの作成を参照。
  3. 各コンポーネントに一意的な識別子を割り当てます。コンポーネントの Tag プロパティの値に設定して行います。詳細については、各コンポーネントへの識別子の割り当てを参照してください。

  4. 適当なプロパティを設定して、各コンポーネントの外観を指定します。次のトピックスでは、特定の情報を説明します。

これは、レイアウト エディター内の UI の例です。レイアウト エディター内のコンポーネントは、アクティブではありません。

座標を利用してコンポーネントを配置

GUIDE レイアウト エディターの下部のステータス バーは、以下を表示します。

  • 現在の点: レイアウト エディターのグリッド エリアの左下隅に対するマウスの現在位置。

  • 位置: 選択されたコンポーネントの Position プロパティは、[左端からの距離、下端からの距離、幅、高さ] の要素のベクトルです。ここで、距離は、親の Figure、パネルまたはボタン グループに対する距離です。

ステータス バーとルーラーの座標を解釈する方法を次に示します。

  • [位置] の値は、コンポーネントを移動したり、サイズを変更したりすると更新されます。ベクトルの最初の 2 つの要素は、コンポーネントを移動すると変更されます。ベクトルの残りの 2 つの要素は、コンポーネントの高さと幅が変わると変更されます。

  • コンポーネントが選択されていない場合、[位置] の値は Figure の位置とサイズを表示します。

パネルまたはボタン グループへのコンポーネントの追加

パネルまたはボタン グループにコンポーネントを追加するには、コンポーネント パレットでコンポーネントを選択して、希望するパネルまたはボタン グループの上にカーソルを移動します。カーソルの位置は、コンポーネントの親を決めます。

次の図に示すように、GUIDE が親を強調表示します。ユーザーがコンポーネントをドロップしたり、カーソルをクリックする場合、強調表示は、そのコンポーネントが強調表示されたパネル、ボタン グループ、または、Figure の子になることを示します。

パネルやボタン グループの各コンポーネントにTag プロパティの値を設定することによって、これらの一意的な識別子を割り当てます。詳細は、各コンポーネントへの識別子の割り当てを参照してください。

パネルとボタン グループに既存のコンポーネントを含める.  パネルまたはボタン グループに新規のコンポーネントを追加したり、既存のコンポーネントをドラッグすると、コンポーネントは、完全にまたは部分的に囲まれていても、パネルまたはボタン グループの、メンバーまたは子に自動的になります。ただし、そのコンポーネントがパネルまたはボタン グループに完全に含まれていないと、レイアウト エディターおよび実行中のアプリで欠けているように見えます。

既存のコントロールをグループ化するために、新規のパネルまたはボタン グループを UI に追加できます。そのようなコントロールを、新規のパネルやボタン グループに含めるには、以下を行います。ここでは、パネルについて説明しますが、ボタン グループ内のコンポーネントに対しても同じことを行います。

  1. 新規のパネルまたは新規のボタン グループ ツールを選択して、目的のサイズと位置をもつ四角形をドラッグ アウトします。

    パネルは、座標軸、Table、または他のパネルやボタン グループでない限り、その境界内のどのコントロールも表示します。入れ子にするパネルのみがオーバーラップされ、オーバーラップが完全であることを確認します。

  2. レイアウトにこのような問題があるときには、表示させない新規のパネルをコンポーネントの裏に置きます。これは、[レイアウト] メニューの [最背面へ移動] または [背面へ移動] を使用して行うことができます。このパネルにコンポーネントを追加したり、またはコンポーネントをドラッグすると、このパネルは他のパネルの後ろに自動的に置かれます。

    ここで、プロパティ インスペクターを使用して、パネルの TagString プロパティを、目的のものに設定すると良いでしょう。

  3. [表示] メニューからオブジェクト ブラウザーを開き、追加したパネルを見つけます。このツールを使い、グループ化するために目的としたすべてのコントロールが含まれていることを確かめます。欠けているものがあれば、以下の手順を実行します。

  4. 含めようとするコントロールをドラッグしますが、パネル内でここでは目的の位置に合わせません。さらに、パネルを用いてそれらをグループ化するように、既に適切な位置にある、コントロールをわずかに移動させます。

    パネルは、ユーザーがコントロールを移動するときに、コントロールを含むことを示す強調表示を行います。オブジェクト ブラウザーは、関係を確認するために更新します。パネルを移動するとき、その子のコントロールはパネルとともに移動します。

    ヒント

    周囲のパネルまたはボタン グループとともにコントロールを登録するために、1、2 ピクセルでもマウスを用いてコントロールを移動する必要があります。複数のコントロールを選択して矢印キーを使用して移動することはできません。オブジェクト ブラウザーを使用して、そのコントロールが適切に入れ子になっていることを確かめます。

パネルとボタン グループを UI に組み込む方法についての詳細は、パネルとボタン グループを参照してください。

各コンポーネントへの識別子の割り当て

Tag プロパティを使用して、一意の意味のある識別子をコンポーネントに割り当てます。

レイアウト エリアにコンポーネントを配置する場合、GUIDE は既定値を Tag プロパティに割り当てます。UI を保存する前に、この値を UI 内でコンポーネントの役割を表す名前または略語で置き換えます。

割り当てる名前はコンポーネントを識別するためにコードで使用されるため、UI で一意でなければなりません。Tag プロパティを設定するには、次を行います。

  1. [ビュー][プロパティ インスペクター] を選択するか、[プロパティ インスペクター] ボタン をクリックします。

  2. レイアウト エリアで、Tag を設定したいコンポーネントを選択します。

  3. プロパティ インスペクターで、[Tag] を選択してからその値を、識別子として使用する名前で置き換えます。次の図で、Tagpushbutton1 に設定されます。

ユーザー インターフェイス コントロール

ユーザー インターフェイス コントロールは、プッシュ ボタン、トグル ボタン、スライダー、ラジオ ボタン、エディット テキスト コントロール、スタティック テキスト コントロール、ポップアップ メニュー、チェック ボックス、リスト ボックスを含みます。

ユーザー インターフェイス コントロールを定義するためには、いくつかのプロパティを設定する必要があります。このためには、以下のことを行います。

  1. プロパティ インスペクターを使用して、該当するプロパティを変更します。[ビュー][プロパティ インスペクター] を選択するか、[プロパティ インスペクター] ボタン をクリックして、プロパティ インスペクターを開きます。

  2. レイアウト エリアで、定義しているコンポーネントを選択します。

以下のトピックスでは、ユーザー インターフェイス コントロールの一般に利用されるプロパティについて述べ、各コントロールに対する簡単な例を提供します。

一般に利用するプロパティ

次の表では、ユーザー インターフェイス コントロールを記述するために必要となる、最も一般に利用されるプロパティを示します。特定のコントロールの説明では、そのコントロールに固有のプロパティもリストします。

プロパティ説明
Enableoninactiveoff。既定値は、on です。コントロールがユーザーに利用可能であるかどうかを決めます。
Maxスカラー。既定値は 1 です。最大値。説明はコンポーネントのタイプに依存します。
Minスカラー。既定値は 0 です。最小値。説明はコンポーネントのタイプに依存します。
Position4 要素ベクトル。[左端からの距離、下端からの距離、幅、高さ] です。コンポーネントのサイズとその親に対する相対的な位置。
String文字ベクトル (例: 'button1')。文字配列または文字ベクトルの cell 配列も指定できます。コンポーネント ラベル。リスト ボックスとポップアップ メニューの場合は、項目のリストです。
Unitscharacterscentimetersinchesnormalizedpixelspoints。既定値は、characters です。Position プロパティ ベクトルを処理するために用いられる測定の単位。
Valueスカラーまたはベクトル。コンポーネントの値。説明はコンポーネントのタイプに依存します。

プロパティの完全なリスト、および表にリストされたプロパティの詳細については、UIControl のプロパティ を参照してください。

プッシュ ボタン

この図に示すように、ラベル Button 1 が付いたプッシュ ボタンを作成するには、

  • String プロパティを目的のラベルに設定して、プッシュ ボタンのラベルを指定します。この場合は、Button 1 にします。

    ラベルにアンパサンド文字 (&) を表示するには、2 つの & 文字を使用します。removedefaultfactory (大文字と小文字の区別あり) は予約語です。これらのいずれかをラベルとして使用するには、先頭に円記号 (\) を付けます。たとえば、\removeremove を与えます。

    プッシュ ボタンのテキストは 1 行に限られます。複数行を指定すると、最初の行のみが表示されます。指定された String プロパティ値が収まらないほど小さいプッシュ ボタンを作成すると、MATLAB は省略記号を用いて値を短くします。

  • コンポーネントの位置やサイズを正確な値に設定したい場合、その Position プロパティを変更します。

  • プッシュ ボタンにイメージを追加するには、ボタンの CData プロパティに、トゥルーカラー イメージを定義する RGB 値の m×n×3 配列を割り当てます。これは、コード ファイルのオープニング関数において、プログラムにより行わなければなりません。たとえば、配列 imgrand で生成される 0 から 1 までの乱数の値を使用して、16×64×3 トゥルーカラー イメージを定義します。

    img = rand(16,64,3);
    set(handles.pushbutton1,'CData',img);
    

    pushbutton1 はプッシュ ボタンの Tag プロパティです。

    行列 X の変換と対応するカラーマップ、すなわち、(X, MAP) イメージから RGB (トゥルーカラー) 形式への変換の詳細は、関数 ind2rgb を参照してください。

スライダー

この図に示すように、スライダーを作成するには、

  • スライダーの Min プロパティをスライダーの最小値に、Max プロパティを最大値に設定して、スライダーの範囲を指定します。Min プロパティは、Max より小さくなければなりません。

  • Value プロパティを適切な数値に設定することによってスライダーが作成される場合、スライダーが示す値を指定します。この数値は、Min 以上で Max 以下でなければなりません。指定した範囲外を Value に指定すると、スライダーは表示されません。

  • スライダー Value はユーザーが矢印ボタンをクリックすることで少し変化したり、トラフ (チャネルとも呼ばれる) をクリックすることで大きく変化します。SliderStep プロパティを設定して、スライダーがこれらのアクションにどのように応答するかをコントロールします。SliderStep は 2 要素ベクトル [minor_step major_step] として指定します。ここで、minor_stepmajor_step 以下です。非常に小さい値を指定するとスライダーが誤動作することがあるので、minor_stepmajor_step の両方を 1e-6 より大きい値に設定します。トラフをクリックして、スライダーのつまみの移動範囲の比率に major_step を設定します。それを 1 またはそれ以上に設定すると、サムはトラフがクリックされると Max または Min に移動します。

    major_step が増加するに従い、サムは長くなります。major_step が 1 のとき、サムの長さはトラフの 1/2 になります。major_step が 1 より大きい場合、サムは大きくなり続け、トラフの全長にゆっくり近づいていきます。スライダーがスクロール バーとして機能する場合、major_step の値を変更することで、この動作を使用して、現在表示されているドキュメントの割合を表示できます。

  • コンポーネントの位置やサイズを正確な値に設定したい場合、その Position プロパティを変更します。

    スライダー コンポーネントには、説明テキストやデータ入力機能がありません。スライダーにラベルを付けるには、スタティック テキスト コンポーネントを使用します。エディット テキスト コンポーネントを使用して、スライダーに対して値を入力することができます。

    Mac プラットフォームでは、水平方向のスライダーの高さに制限があります。位置ベクトルに設定した高さがこの制限を超えると、スライダーの表示される高さは、許容される最大値になります。位置ベクトルの要素 height は変更されません。

ラジオ ボタン

この図に示すように、ラベル Indent nested functions が付いたラジオ ボタンを作成するには、

  • String プロパティを目的のラベルに設定して、ラジオ ボタンのラベルを指定します。この場合は、Indent nested functions にします。

    ラベルにアンパサンド文字 (&) を表示するには、2 つの & 文字を使用します。removedefaultfactory (大文字と小文字の区別あり) は予約語です。これらのいずれかをラベルとして使用するには、先頭に円記号 (\) を付けます。たとえば、\removeremove を与えます。

    ラジオ ボタンのテキストは 1 行に限られます。複数行を指定すると、最初の行のみが表示されます。指定された String プロパティ値が収まらないほど小さいラジオ ボタンを作成すると、MATLAB ソフトウェアは省略記号を用いて値を短くします。

  • ラジオ ボタンの Value プロパティを、ラジオ ボタンの Max プロパティの値 (既定値は 1) に設定すると、選択されたボタンをもつラジオ ボタンを作成します。ラジオ ボタンを選択されていない状態にするには、ValueMin (既定値は 0) に設定します。これに対応して、ユーザーが、ラジオ ボタンを選択すると、MATLAB は ValueMax に設定し、選択しないと Min に設定します。

  • コンポーネントの位置やサイズを正確な値に設定したい場合、その Position プロパティを変更します。

  • ラジオ ボタンにイメージを追加するには、ボタンの CData プロパティに、トゥルーカラー イメージを定義する RGB 値の m×n×3 配列を割り当てます。これは、コード ファイルのオープニング関数において、プログラムにより行わなければなりません。たとえば、配列 imgrand で生成される 0 から 1までの乱数の値を使用して、16×24×3 トゥルーカラー イメージを定義します。

    img = rand(16,24,3);
    set(handles.radiobutton1,'CData',img);
    

    ラジオ ボタンとトグル ボタンの排他的な選択を処理するには、これらをボタン グループに置きます。詳細は、ボタン グループを参照してください。

チェック ボックス

この図に示すように、ラベル Display file extension が付いた、はじめにチェックされているチェック ボックスを作成するには、以下のことを行います。

  • String プロパティを目的のラベルに設定して、チェック ボックスのラベルを指定します。この場合は、Display file extension にします。

    ラベルにアンパサンド文字 (&) を表示するには、2 つの & 文字を使用します。removedefaultfactory (大文字と小文字の区別あり) は予約語です。これらのいずれかをラベルとして使用するには、先頭に円記号 (\) を付けます。たとえば、\removeremove を与えます。

    チェック ボックスのテキストは 1 行に限られます。指定された String プロパティ値が収まらないほど幅の狭いコンポーネントを指定すると、MATLAB ソフトウェアは省略記号を用いて値を短くします。

  • Value プロパティを Max プロパティの値 (既定値は 1) に設定すると、チェックされた状態のチェック ボックスを作成します。チェック ボックスがチェックされていない状態にするには、ValueMin (既定値は 0) に設定します。これに対して、ユーザーがチェック ボックスをチェックすると、MATLAB は ValueMax に設定し、チェックしないと、Min に設定します。

  • コンポーネントの位置やサイズを正確な値に設定したい場合、その Position プロパティを変更します。

エディット テキスト

次の図に示すように、はじめにテキスト Enter your name here を表示するエディット テキスト コンポーネントを作成するには、以下を行います。

  • String プロパティを目的の値に設定して、エディット テキスト コンポーネントの作成時に表示されるテキストを指定します。この場合は、Enter your name here にします。

    ラベルにアンパサンド文字 (&) を表示するには、2 つの & 文字を使用します。removedefaultfactory (大文字と小文字の区別あり) は予約語です。これらのいずれかをラベルとして使用するには、先頭に円記号 (\) を付けます。たとえば、\removeremove を与えます。

  • 複数行の入力を可能にするには、Max プロパティと Min プロパティの差が 1 より大きくなるように、これらのプロパティを指定します。たとえば、Max = 2Min = 0 にします。Max の既定値は 1Min の既定値は 0 です。MATLAB ソフトウェアでは、必要に応じて表示されるテキストが折り返され、スクロール バーが追加されます。すべてのプラットフォームで、ユーザーが Tab キーを用いて複数行のテキスト ボックスを入力すると、編集カーソルが以前の位置に配置され、テキストは強調表示されません。

    Max-Min が 1 以下の場合、エディット テキスト コンポーネントは 1 行のみの入力ができます。指定されたテキストが収まらないほど幅の狭いコンポーネントを指定すると、MATLAB はテキストの一部のみを表示します。矢印キーを使用して、テキスト内でカーソルを移動させることができます。すべてのプラットフォームにおいて、ユーザーが Tab キーを利用して 1 行のテキスト ボックスを入力すると、コンテンツ全体が強調表示され、カーソルはテキストの末尾にあります。

  • コンポーネントの位置やサイズを正確な値に設定したい場合、その Position プロパティを変更します。

  • プロパティ インスペクターの FontName エントリに、システムにあるフォントの名前を入力して、エディット ボックスで表示するテキスト フォントを指定します。Microsoft® Windows® プラットフォームの場合、既定値は MS Sans Serif です。Macintosh および UNIX® プラットフォームの場合、既定値は Helvetica です。

    ヒント

    どのフォントが利用できるかどうかを見つけるために、MATLAB プロンプトで uisetfont と入力します。リスト ボックスを含むダイアログが表示されます。利用可能なフォントがこのリスト ボックスに表示され、ユーザーが選択できます。フォントを選択すると、その名前と他の特性が構造体に返されます。この構造体から FontName をコピーして、プロパティ インスペクターに貼り付けることができます。リストされているすべてのフォントが他のシステムで使用できるとは限りません。

スタティック テキスト

この図に示すように、テキスト Select a data set を表示するスタティック テキスト コンポーネントを作成するには、次のようにします。

  • コンポーネントの String プロパティに表示したいテキストを設定して、コンポーネントに表示されるテキストを指定します。この場合は、Select a data set にします。

    リスト項目にアンパサンド文字 (&) を表示するには、2 つの & 文字を使用します。removedefaultfactory (大文字と小文字の区別あり) は予約語です。これらのいずれかをラベルとして使用するには、先頭に円記号 (\) を付けます。たとえば、\removeremove を与えます。

    コンポーネントに指定した値を収めるのに十分な幅がない場合、MATLAB は表示されているテキストを折り返します。

  • コンポーネントの位置やサイズを正確な値に設定したい場合、その Position プロパティを変更します。

  • その FontNameFontWeightFontAngleFontSize および FontUnits プロパティを含むテキスト フォントを指定できます。詳細については、前のトピックのエディット テキストを参照してください。

ポップアップ メニュー

次の図に示すように、項目 onetwothreefour をもつ、(ドロップダウン メニューまたはコンボ ボックスとも呼ばれる) ポップアップ メニューを作成するには、次のようにします。

  • String プロパティに表示したい項目を設定することによって、表示されるポップアップ メニュー項目を指定します。プロパティ名の右側にある

    ボタンをクリックすると、プロパティ インスペクター エディターが開きます。

    メニュー項目にアンパサンド文字 (&) を表示するには、2 つの & 文字を使用します。removedefaultfactory (大文字と小文字の区別あり) は予約語です。これらのいずれかをラベルとして使用するには、先頭に円記号 (\) を付けます。たとえば、\removeremove を与えます。

    コンポーネントの幅が狭く、指定したメニュー項目が 1 つ以上表示できない場合、MATLAB は省略記号を用いてこれらの項目を短くします。

  • コンポーネントが作成されるときに 1 つの項目を選択するには、Value を選択したリスト項目のインデックスを示すスカラーに設定します。ここで 1 はリストの最初の項目に対応します。Value2 に設定すると、メニューが作成されたときに、次のように見えます。

  • コンポーネントの位置とサイズを正確な値に設定したい場合、その Position プロパティを変更します。ポップアップ メニューの高さは、フォントのサイズで決まります。位置ベクトルに設定する高さは無視されます。

  • ポップアップ メニューではラベルを追加できません。ポップアップ メニューをラベルするには、スタティック テキスト コンポーネントを使用します。

リスト ボックス

次の図に示すように、項目 onetwothreefour をもつ、リスト ボックスを作成するには、以下を行います。

  • String プロパティに表示したいリストを設定することによって、表示される項目のリストを指定します。プロパティ インスペクターを使用して、リストを入力します。エディターを開くには、プロパティ名の右側にある ボタンをクリックします。

    ラベルにアンパサンド文字 (&) を表示するには、2 つの & 文字を使用します。removedefaultfactory (大文字と小文字の区別あり) は予約語です。これらのいずれかをラベルとして使用するには、先頭に円記号 (\) を付けます。たとえば、\removeremove を与えます。

    コンポーネントの幅が狭く、指定したリスト項目が 1 つ以上表示できない場合、MATLAB ソフトウェアは省略記号を用いてこれらの項目を短くします。

  • Max および Min プロパティとともに Value プロパティを使用して、選択を指定します。

    • コンポーネントが作成されるときに 1 つの項目を選択するには、Value を選択したリスト項目のインデックスを示すスカラーに設定します。ここで 1 はリストの最初の項目に対応します。

    • コンポーネントの作成時に複数の項目を選択するには、Value を選択された項目のインデックスのベクトルに設定し、Value = [1,3] は、次のような選択になります。

      複数項目の選択を可能にするには、Max プロパティと Min プロパティの差が 1 より大きくなるように、これらのプロパティを指定しなければなりません。たとえば、Max = 2Min = 0 にします。Max の既定値は 1Min の既定値は 0 です。

    • 最初の選択を行わない場合、複数の選択が可能となるように Max プロパティと Min プロパティを設定します。つまり、Max - Min > 1 とし、Value プロパティを空行列 [] に設定します。

  • リスト ボックスが小さく、すべてのリスト項目を表示できない場合、ListBoxTop プロパティを、コンポーネントが作成されたときにトップに表示したい項目のインデックスに設定できます。

  • コンポーネントの位置やサイズを正確な値に設定したい場合、その Position プロパティを変更します。

  • リスト ボックスは、ラベルを提供しません。リスト ボックスにラベリングするには、スタティック テキスト コンポーネントを使用します。

トグル ボタン

この図に示すように、ラベル Left/Right Tile が付いたトグル ボタンを作成するには、

  • String プロパティを目的のラベルに設定して、トグル ボタンのラベルを指定します。この場合は、Left/Right Tile にします。

    ラベルにアンパサンド文字 (&) を表示するには、2 つの & 文字を使用します。removedefaultfactory (大文字と小文字の区別あり) は予約語です。これらのいずれかをラベルとして使用するには、先頭に円記号 (\) を付けます。たとえば、\removeremove を与えます。

    トグル ボタンのテキストは 1 行に限られます。複数行を指定すると、最初の行のみが表示されます。指定された String 値が収まらないほど小さいトグル ボタンを作成すると、MATLAB は省略記号を用いてテキストを短くします。

  • Value プロパティを、Max プロパティの値 (既定値は 1) に設定することで、選択されたボタン (押された状態) をもつトグル ボタンを作成します。トグル ボタンを選択されていない (上がった) 状態にするには、ValueMin (既定値は 0) に設定します。これに対応して、ユーザーが、トグル ボタンを選択すると、MATLAB は ValueMax に設定し、選択しないと、ValueMin に設定します。次の図は、押された状態のトグル ボタンを示します。

  • コンポーネントの位置やサイズを正確な値に設定したい場合、その Position プロパティを変更します。

  • トグル ボタンにイメージを追加するには、ボタンの CData プロパティに、トゥルーカラー イメージを定義する RGB 値の m×n×3 配列を割り当てます。これは、コード ファイルのオープニング関数において、プログラムにより行わなければなりません。たとえば、配列 imgrand で生成される 0 から 1 までの乱数の値を使用して、16×64×3 トゥルーカラー イメージを定義します。

    img = rand(16,64,3);
    set(handles.togglebutton1,'CData',img);
    

    togglebutton1 はトグル ボタンの Tag プロパティです。

    ラジオ ボタンとトグル ボタンの排他的な選択を処理するには、これらをボタン グループに置きます。詳細については、ButtonGroup のプロパティ を参照してください。

パネルとボタン グループ

パネルとボタン グループは、UI コンポーネントをグループにまとめて配置するコンテナーです。パネルやボタン グループを移動すると、その子もともに移動し、パネルやボタン グループ上での相対的な位置を保ちます。

パネルとボタン グループを定義するには、いくつかのプロパティを設定する必要があります。このためには、以下のことを行います。

  1. プロパティ インスペクターを使用して、該当するプロパティを変更します。[ビュー][プロパティ インスペクター] を選択するか、[プロパティ インスペクター] ボタン をクリックして、プロパティ インスペクターを開きます。

  2. レイアウト エリアで、定義しているコンポーネントを選択します。

以下のトピックスでは、パネルやボタン グループの一般に利用されるプロパティについて述べ、各コンポーネントに対する簡単な例を提供します。

一般に利用するプロパティ

次の表では、パネルまたはボタン グループを記述するために必要となる、最も一般に利用されるプロパティを示します。

プロパティ

説明

Position

4 要素ベクトル。[左端からの距離、下端からの距離、幅、高さ] です。

コンポーネントのサイズとその親に対する相対的な位置。

Title

文字ベクトル (例: 'Start')。

コンポーネント ラベル。

TitlePosition

lefttopcentertoprighttopleftbottomcenterbottomrightbottom。既定値は、lefttop です。

パネルまたはボタン グループに対するタイトルの位置。

Units

characterscentimetersinches、normalized、pixelspoints。既定値は characters です。

Position プロパティ ベクトルを処理するために用いられる測定の単位。

プロパティの完全なリストおよび表にリストされたプロパティの詳細については、Panel のプロパティButtonGroup のプロパティ を参照してください。

パネル

この図に示すように、タイトル My Panel が付いたパネルを作成するには、

  • Title プロパティに目的の値を設定して、パネルのタイトルを指定します。この場合は、My Panel にします。

    タイトルにアンパサンド文字 (&) を表示するには、2 つの & 文字を使用します。remove、default、factory (大文字と小文字の区別あり) は予約語です。これらのいずれかをラベルとして使用するには、先頭に円記号 (\) を付けます。たとえば、\removeremove を与えます。

  • ポップアップ メニューから利用できる TitlePosition プロパティの値を 1 つ選択してパネルのタイトルの位置を指定します。この場合は、lefttop にします。パネルの上、下、左、中央、右にタイトルを配置することも可能です。

  • パネルの位置やサイズを正確な値に設定したい場合、その Position プロパティを変更します。

ボタン グループ

この図に示すように、タイトル My Button Group が付いたパネルを作成するには、

  • Title プロパティに目的の値を設定して、ボタン グループのタイトルを指定します。この場合は、My Button Group にします。

    タイトルにアンパサンド文字 (&) を表示するには、2 つの & 文字を使用します。remove、default、factory (大文字と小文字の区別あり) は予約語です。これらのいずれかをラベルとして使用するには、先頭に円記号 (\) を付けます。たとえば、\removeremove を与えます。

  • ポップアップ メニューから利用できる TitlePosition プロパティの値を 1 つ選択してボタン グループのタイトルの位置を指定します。この場合は、lefttop にします。ボタン グループの上、下、左、中央、右にタイトルを配置することも可能です。

  • ボタン グループの位置やサイズを正確な値に設定したい場合、その Position プロパティを変更します。

座標軸

座標軸によりグラフやイメージなどのグラフィックスを表示するには、plotsurflinebarpolarpiecontourmesh などのコマンドを使用します。

座標軸を定義するには、いくつかのプロパティを設定する必要があります。このためには、以下のことを行います。

  1. プロパティ インスペクターを使用して、該当するプロパティを変更します。[ビュー][プロパティ インスペクター] を選択するか、[プロパティ インスペクター] ボタン をクリックして、プロパティ インスペクターを開きます。

  2. レイアウト エリアで、定義しているコンポーネントを選択します。

以下のトピックスでは、座標軸の一般的に使用されるプロパティについて述べ、簡単な例を提供します。

一般に利用するプロパティ

次の表では、座標軸を記述するために必要となる、最も一般に利用されるプロパティを示します。

プロパティ

説明

NextPlot

addreplacereplacechildren。既定値は、replace です。

プロットでグラフィックスを追加するかどうか、グラフィックスを置き換えて座標軸のプロパティを既定値にリセットする、あるいはグラフィックスのみを置き換える、を指定します。

Position

4 要素ベクトル。[左端からの距離、下端からの距離、幅、高さ] です。

コンポーネントのサイズとその親に対する相対的な位置。

Units

normalizedcentimeterscharactersinchespixelspoints。既定値は、normalized です。

位置ベクトルを処理するために用いられる測定の単位。

プロパティの完全なリスト、および表にリストされたプロパティの詳細については、Axes のプロパティ を参照してください。

Axes オブジェクトの詳細については、次のようなコマンドを参照してください。plotsurflinebarpolarpiecontourimagesc および mesh

これらのグラフ作成関数の多くは、その NextPlot プロパティの設定に従い、既定で座標軸のプロパティをリセットします。このために、軸の範囲を設定し直したり、座標軸のコンテキスト メニューやコールバックを削除するなど、望ましくない動作が引き起こされる場合があります。NextPlot プロパティの設定については、座標軸の作成を参照してください。

座標軸の作成

GUIDE アプリには座標軸があります。

GUIDE に axes オブジェクトを作成するときは以下のガイドラインに従ってください。

  • 目盛りをレイアウト エディターに現れるボックスの外側に置くことができます。上述の座標軸は、レイアウト エディターで次のように見えます。座標軸の左と下に目盛りのためのスペースが配置されます。座標軸に描かれる関数は、目盛を適切に更新します。

  • 座標軸コンポーネントにラベルを付けるには、コード ファイルで関数 titlexlabelylabelzlabel および text を使用します。たとえば、

    xlh = (axes_handle,'Years')
    

    は、X 軸に Years とラベルします。X 軸のラベルのハンドルは xlh です。

    removedefaultfactory (大文字と小文字の区別あり) は予約語です。これらのいずれかをコンポーネント テキストで使用するには、先頭に円記号 (\) を付けます。たとえば、\removeremove を与えます。

  • 座標軸の位置やサイズを正確な値に設定したい場合、その Position プロパティを変更します。

  • 座標軸のプロパティをカスタマイズすると、それらのいくつか (たとえば、コールバック、フォントの特性、軸の範囲と目盛など) は、NextPlot プロパティが 'replace' の既定値をもつときに、グラフを座標軸に書き込むたびに、既定値にリセットされます。カスタマイズされたプロパティを所望の状態に保つには、ここに示すように、プロパティ インスペクターで、NextPlot'replacechildren' に設定します。

テーブル

テーブルを用いると、2 次元の表にデータを表示できます。プロパティ インスペクターを使用して、オブジェクトのプロパティ値の取得や設定を行うことができます。

一般に利用するプロパティ

テーブル コンポーネントの最も一般に使用されるプロパティを、下記の表にリストします。これらは、テーブル プロパティ エディターに現れる順でグループ化されています。テーブル プロパティの詳細は、uitable コマンドのドキュメンテーションを参照してください。

グループプロパティ説明
ColumnName文字ベクトル | {'番号'} | 空行列 ([]) の 1 行 n 列の cell 配列列ヘッダー ラベル
ColumnFormat文字ベクトルの cell 配列列を表示するかどうかと編集できるかどうかを決める
ColumnWidth1 行 n 列の cell 配列または 'auto'各列のピクセル単位の幅、個々の列幅は 'auto' にも設定できます
ColumnEditable論理値 1 行 n 列の行列 | スカラー論理値 | 空行列 ([])列内のデータを編集可能として決める
RowName1 行 n 列の文字ベクトルの cell 配列行ヘッダー ラベルの名前
BackgroundColorn 行 3 列の RGB triple 行列セルの背景色
RowStriping{on} | offテーブルの行のストライプ配色
データData数値、論理値、文字データの行列または cell 配列 テーブル データ

テーブルの作成

図に示すように、GUIDE のテーブルを用いて UI を作成するには、以下を行います。

レイアウト エディターにテーブル アイコンをドラッグして、テーブル内で右クリックします。テーブルのコンテキスト メニューから [テーブル プロパティ エディター] を選択します。テーブルだけを選択する場合、[ツール] メニューから [テーブル プロパティ エディター] を選択することもできます。

テーブル プロパティ エディターの使用方法.  こうして開いた場合、テーブル プロパティ エディターは [列] ペインを表示します。また、テーブル プロパティ エディターのアイコンの 1 つ をクリックしてプロパティ インスペクターから開くこともできます。その場合、テーブル プロパティ エディターが開き、クリックしたプロパティに応じたペインが表示されます。

テーブル プロパティ エディターの左側のリストの項目をクリックすると、ペインのコンテンツを右側に変更します。項目を使用して、テーブルの [列][行][データ][色] オプションを指定して、コントロールをアクティブにします。

[列] ペインと [行] ペインはそれぞれ、列ごとまたは行ごとに、名前を入力しプロパティを設定できるデータ入力エリアがあります。一度に 1 行または 1 列のみ編集できます。これらのペインは、編集とナビゲートのための 5 つのボタンの垂直方向のグループを含みます。

ボタン目的アクセラレータ キー
  WindowsMacintosh
[挿入]現在の項目の下に、新規の列または行定義の項目を挿入します。InsertInsert
[削除]現在の列または行の定義の項目 (undo でない) を削除します。Ctrl+DCmd+D
[コピー]その下の新しい行に選択された項目のコピーを挿入します。Ctrl+PCmd+P
[上]選択された項目を 1 行上に移動します。Ctrl+
上矢印
Cmd+
上矢印
[下]選択された項目を 1 行下に移動します。Ctrl+
下矢印
Cmd+
下矢印


カーソルがデータ入力エリアにあるときに限り、キーボードと同じ動作をします。上記にリストされたものの他に、Ctrl+T または Cmd+T を入力すると、編集のためにカーソルを含むフィールド全体を選択します (フィールドがテキストを含む場合)。

テーブル プロパティ エディターでの変更をテーブルに保存するには、[OK] をクリックします。あるいは、[適用] をクリックすると、変更を送り、 テーブル プロパティ エディターを用いて続行します。

列のプロパティの設定.  [挿入] をクリックして、さらに 2 列を追加します。

[列ヘッダーとして下記に入力された名前を表示] を選択し、[名前] グループに「Rate」、「Amount」、「Available」、「Fixed/Adj」を入力して ColumnName を設定します。Available および Fixed/Adj 列に対し、ColumnEditable プロパティを on に設定します。最後に、4 列に対して ColumnFormat を設定します。

Rate 列に対して、[数値] を選択します。Amount 列に対して、[カスタム] を選択して、カスタム形式エディターで [bank] を選択します。

Available 列を既定値にします。これにより、MATLAB はテーブルの Data プロパティの値をもとに選択できます。Fixed/Adj 列に対して、 [リストの選択] を選択して、ポップアップ メニューを作成します。[リスト エディターの選択] で [挿入] をクリックして、第 2 の選択を追加し、Fixed と Adjustable を 2 つの選択として入力します。

メモ

選択リストから項目を選択できるようにするには、リストが占めている列の ColumnEditable プロパティが 'true' に設定されなければなりません。ポップアップ コントロールは、列が編集可能である場合のみ表示されます。

行のプロパティの設定.  [行] タブにおいて、既定値の RowName[番号付き行ヘッダー表示] にします。

データのプロパティの設定.  Data プロパティを使用してテーブル内のデータを指定します。GUIDE で指定する前に、コマンド ウィンドウでデータを作成します。たとえば、次のように入力します。

dat =  {6.125, 456.3457, true,  'Fixed';...
6.75,  510.2342, false, 'Adjustable';...
7,     658.2,    false, 'Fixed';};

テーブル プロパティ エディターで、ユーザーが定義したデータを選択し、[データ値を選択した以下のワークスペース変数に変更] を選択します。

色のプロパティの設定.  [色] タブで、テーブルに対して BackgroundColorRowStriping を指定します。

プロパティ インスペクターによって、テーブルのその他の uitable プロパティを変更できます。

GUIDE UI コンポーネントのサイズ変更

次のいずれかの方法で、コンポーネントをサイズ変更できます。

コンポーネントの隅をドラッグ

サイズ変更したいコンポーネントを選択します。コーナー ハンドルの 1 つをクリックして、コンポーネントが適切なサイズになるまでドラッグします。

コンポーネントの Position プロパティの設定

サイズ変更したい 1 つまたは複数のコンポーネントを選択します。次に、[ビュー][プロパティ インスペクター] を選択するか、[プロパティ インスペクター] ボタン をクリックします。

  1. プロパティ インスペクターで Units プロパティまでスクロールし、現在の設定が characters または normalized であるかを確認します。Units の隣のボタンをクリックしてから、ポップアップ メニューから inches の設定を変更します。

  2. Position の隣の + 記号をクリックします。プロパティ インスペクターは、Position プロパティの要素を表示します。

  3. コンポーネントに widthheight を入力します。

  4. Units プロパティを前の設定、characters または normalized にリセットします。

複数のコンポーネントを選択するためには、それらが同じ親をもたなければなりません。つまり、同じ Figure、パネルまたはボタンのグループに含まれなければなりません。Units プロパティを characters (サイズ変更不能な UI) または normalized (サイズ変更可能な UI) に設定すると、UI はプラットフォームに依存せず同じように表示されます。

関連するトピック