方法: レイアウト コントロール (C++)

ダイアログ エディターには、コントロールを自動的に配置およびサイズ変更するレイアウト ツールが提供されます。 ほとんどのタスクでは、ダイアログ エディター ツールバーを使用できます。 すべてのダイアログ エディター ツールバー コマンドは [形式] メニューでも使用できます。ほとんどのツール バーにはショートカット キーがあります。

ダイアログ ボックスの多くのレイアウト コマンドは、複数のコントロールが選択されている場合にのみ使用できます。 1 つのコントロールまたは複数のコントロールを選択できます。複数のコントロールが選択されている場合、最初に選択するコントロールは既定で最も優勢なコントロールです。

現在のコントロールの位置、高さ、および幅は、ステータス バーの右下隅に表示されます。 ダイアログ ボックス全体を選択すると、ステータス バーにダイアログ ボックス全体の位置と、その高さと幅が表示されます。

コントロールを配置する

ダイアログ エディターを使用すると、次の 3 つの異なる状態のいずれかを持つダイアログ ボックスにコントロールを配置できます。

  • ガイドと余白をオンにした場合は、既定値として設定します。

  • レイアウト グリッドがオンです。

  • スナップまたは配置機能がありません。

ダイアログ エディター ツールバーには、状態を制御するボタンが含まれている。

  • 状態を変更するには、適切なアイコンを選択するか、メニューの [形式]>[Guide Settings](ガイド設定) に移動します。

[Guide Settings](ガイド設定) ダイアログ ボックスには、次のプロパティがあります。

プロパティ 説明
レイアウト ガイド レイアウト ガイドの設定を表示します。
なし レイアウト ツールを非表示にします。
ルーラーとガイド 有効にすると、レイアウト ツールにルーラーが追加され、ガイドをルーラーに配置できます。 既定のガイドは余白です。
Grid レイアウト グリッドを作成します。 新しいコントロールは、グリッドに自動的に配置されます。
グリッド間隔 ダイアログ ボックスユニット (DLUs) のグリッド間隔の設定を表示します。
幅: DLU DLUs のレイアウト グリッドの幅を設定します。 水平 DLU は、ダイアログ ボックス フォントの平均幅を 4 で割った値です。
高さ: DLU レイアウト グリッドの高さを DLU で設定します。 垂直 DLU は、ダイアログ ボックス フォントの平均高さを 8 で割った値です。

ガイドとマージン

コントロールの移動、コントロールの追加、または現在のレイアウトの再調整を行う場合でも、ガイドと余白は、ダイアログ ボックス内でコントロールを正確に配置するのに役立ちます。

ダイアログ ボックスを作成すると、余白と呼ばれる 4 つの変更されたガイドが提供され、青い点線として表示されます。

  • 余白を移動するには、余白を新しい位置にドラッグします。

  • 余白を消す場合は、余白をゼロの位置に移動します。

  • 余白を戻す場合は、余白のゼロ位置の上にポインターを置き、余白を位置に移動します。

ガイドは、エディターに表示されるダイアログ ボックス全体に青い点線で表示され、ダイアログ エディターの上部と左側のルーラーに対応する矢印として表示されます。 コントロールのサイズ変更ハンドルは、コントロールが移動するとガイドにスナップされ、以前にガイドにスナップされたコントロールがない場合は、ガイドがコントロールにスナップされます。 ガイドを移動すると、ガイドにスナップされるコントロールも移動します。 複数のガイドにスナップされたコントロールは、ガイドの 1 つを移動するとサイズが変更されます。

  • ルーラー内にガイドを作成するには、1 回選択してガイドを作成するか、ダブルクリックして [Guide Settings](ガイド設定) ダイアログ ボックスを起動し、ガイドの設定を指定します。

  • ダイアログ ボックスでガイドを設定するには、ガイドを選択して新しい位置にドラッグするか、ルーラーの矢印を選択して関連付けられているガイドをドラッグします。

    ガイドの座標は、ウィンドウの下部のステータス バーとルーラーに表示されます。または、ガイドの正確な位置を表示するには、ルーラーの矢印の上にポインターを移動します。

  • ガイドを削除するには、ガイドをダイアログ ボックスからドラッグするか、対応する矢印をルーラーからドラッグします。

ガイドとコントロールの間隔を決定するルーラーの目盛りは、ダイアログ ユニット (DLU) によって定義されます。 DLU は、ダイアログ ボックス フォントのサイズ (通常は 8 ポイントの MS シェル ダイアログ) に基づいて作成されます。 水平 DLU は、ダイアログ ボックス フォントの平均幅を 4 で割った値です。 垂直 DLU は、フォントの平均高さを 8 で割った値です。

  • 目盛りの間隔を変更するには、[形式]>[Guide Settings](ガイド設定) メニューに移動し、[グリッド間隔] フィールドに新しい幅と高さを DLU で指定します。

レイアウト グリッド

ダイアログ ボックスにコントロールを配置または配置する場合は、レイアウト グリッドを使用して、より正確な配置を行います。 グリッドがオンになっていると、コントロールは、磁化された場合と同様にグリッドの点線にスナップされます。

  • レイアウト グリッドのオンとオフを切り替えます。メニューの [形式]>[Guide Settings](ガイド設定) に移動し、[グリッド] ボタンを選択またはオフにします。

    個々のダイアログ エディター ウィンドウ内で、ダイアログ エディター ツールバー[グリッドの切り替え] ボタンを使用して、グリッドを制御することもできます。

  • レイアウト グリッドのサイズを変更するには、メニューの [形式]>[ガイド設定] に移動し、グリッド内のセルの高さと幅を DLU で入力します。 最小の高さまたは幅は 4 です。

ガイドを無効にする

特別なキーをマウスと組み合わせて使用して、ガイドのスナップ効果を無効にできます。 Alt キーを使用すると、選択したガイドのスナップ効果が無効にされます。 Shift キーを押しながらガイドを移動すると、スナップされたコントロールはガイドと一緒に移動されません。

  • ガイドのスナップ効果を無効にするには、Alt キーを押しながらコントロールをドラッグします。

  • スナップされたコントロールを移動せずにガイドを移動するには、Shift キーを押しながらガイドをドラッグします。

  • ガイドをオフにする場合は、[形式]>[ガイド設定] メニューに移動します。 次に、[レイアウト ガイド][なし] を 選択します。

    ヒント

    メニューの [形式]>[ガイドの切り替え] でショートカットを使用することもできます。

コントロールの選択

サイズを調整、移動、コピー、または削除するコントロールを選択し、必要な操作を完了します。 ほとんどの場合、ダイアログ エディター ツールバーでサイズ設定ツールと配置ツールを使用するには、複数のコントロールを選択する必要があります。

コントロールを選択すると、その周囲に網掛けされた境界線が付き、ソリッド (アクティブ) またはホロー (非アクティブ) サイズ変更ハンドル、選択境界線に表示される小さな正方形が表示されます。 複数のコントロールが選択されている場合、主要なコントロールにはソリッド サイズ変更ハンドルが含まれます。また、選択した他のすべてのコントロールには、くぼんだサイズ変更ハンドルがあります。

  • コントロールを選択するには、[ツールボックス] ウィンドウ[ポインター] ツールを選択し、次のいずれかの手順を使用して選択します。

    • ポインターをドラッグして、ダイアログ ボックスで選択するコントロールの周囲に選択ボックスを描画します。 マウス ボタンを離すと、選択ボックス内のすべてのコントロールと交差するコントロールが選択されます。

    • Shift キーを押しながら、選択に含めるコントロールを選択します。

    • Ctrl キーを押しながら、選択に含めるコントロールを選択します。

  • 選択したコントロールのグループに対してコントロールを追加または削除するには、Shift キーを押しながら、追加または削除するコントロールを選択します。

最も優先度の高いコントロール

複数のコントロールのサイズ設定または配置を行う場合、ダイアログ エディターは、主要なコントロールを使用して、他のコントロールのサイズ設定または配置方法を決定します。 既定では、最も優勢なコントロールが最初に選択されたコントロールです。

  • 主要なコントロールを指定するには、Ctrl キーを押しながら、最初に他のコントロールのサイズまたは位置に影響を与える目的で使用するコントロールを選択します。 Ctrl キーを押しながら選択内でコントロールを選択すると、そのコントロールもその選択の主要なコントロールに設定されます。

  • 主要なコントロールを変更するには、現在選択されているコントロールの外側を選択して現在の選択を解除し、先に別のコントロールを選択して上記の手順を繰り返します。

Note

主要なコントロールのサイズ変更ハンドルは、下位コントロールのハンドルが空の間、ソリッドです。 それ以上のサイズ変更または配置はすべて、主要なコントロールに基づいて行います。

サイズ コントロール

サイズ変更ハンドルを使用して、コントロールのサイズを変更します。 ポインターがサイズ変更ハンドルに配置されている場合、コントロールのサイズを変更できる方向を示す形状に変更されます。 アクティブなサイズ変更ハンドルはソリッドであり、サイズ変更ハンドルが空の場合、その軸に沿ってコントロールのサイズを変更できない。

  • コントロールのサイズを変更するには、コントロールを選択し、サイズ変更ハンドルをドラッグしてサイズを変更します。

    • 上部と側のサイズ ハンドルは、水平方向または垂直方向のサイズを変更します。

    • 角のサイズ ハンドルは、水平方向と垂直方向の両方のサイズを変更します。

    ヒント

    Shift キーを押しながら方向キーと方向キーを使用することで、コントロールのサイズを一度に 1 つのダイアログ ユニット (DLU) に変更できます。

  • テキストに合わせてコントロールのサイズを自動的に設定するには、メニューの [形式] に移動するか、コントロールを右クリックし、[コンテンツのサイズ] を選択します。

  • コントロールのサイズを同じにする場合は、サイズを変更するコントロールを選択し、メニューの [形式]>[同じサイズに揃える] に移動し、[両方][高さ]、または [幅] を選択します。

    主要なコントロールのサイズに基づいてコントロールのグループのサイズを変更します。これは、シリーズで最初に選択されたコントロールです。 グループ内のコントロールの最終的なサイズは、主要なコントロールのサイズによって異なります。

  • ガイドを使用してコントロールのグループのサイズを設定するには、コントロール (またはコントロール) の一方の側をガイドにスナップし、ガイドをコントロール (またはコントロール) のもう一方の側にドラッグします。 これで、いずれかのガイドを移動して、コントロール (またはコントロール) のサイズを設定できます。

    複数のコントロールで必要に応じて、それぞれサイズを 2 番目のガイドにスナップします。

その他の制御

コンボ ボックスは、ダイアログ ボックスに追加するときにサイズを変更できます。 ドロップダウン リスト ボックスのサイズを指定することもできます。 詳細については、「コンボ ボックス コントロールへの値の追加」を参照してください。

  1. コンボ ボックスの右側にあるドロップダウン矢印ボタンを選択します。

    Arrow on a combo box in an MFC project.

    コントロールのアウトラインが変更され、ドロップダウン リスト領域が拡張されたコンボ ボックスのサイズが表示されます。

  2. ドロップダウン リスト領域の初期サイズを変更するには、小さいサイズ変更ハンドルを使用します。

    Combo box sizing in an MFC project.

  3. ドロップダウン矢印を再度選択して、コンボ ボックスのドロップダウン リスト部分を閉じます。

Note

MFC を使用して水平スクロール バーを含むリスト ボックスをダイアログ ボックスに追加すると、スクロール バーはアプリケーションに自動的に表示されません。

コードで CListBox::SetHorizontalExtent を呼び出して、最も幅の広い要素の最大幅を設定します。 この値を設定しない場合、リスト ボックス内の項目がボックスよりも広い場合でも、スクロール バーは表示されません。

コントロールの配置

  • コントロールを配置するには、配置するコントロールを選択します。 メニューの [形式]>[整列] に移動し、次のいずれかの配置を選択します。

    Alignment 説明
    選択したコントロールを左側に揃えて配置します。
    左右中央 選択したコントロールを中心点に沿って水平方向に配置します。
    権限 選択したコントロールを右側に揃えて配置します。
    選択したコントロールを上端に沿って配置します。
    中央 選択したコントロールを中央の点に沿って垂直方向に配置します。
    選択したコントロールを下端に沿って配置します。

    最初に優先するコントロールを選択するか、またはコントロールのグループの最終的な位置が主要なコントロールの位置に依存する場合に配置またはサイズ変更コマンドを実行する前に、コントロールを優先コントロールに設定してください。

  • コントロールを均等に配置する場合は、再配置するコントロールを選択します。 メニューの [形式]>[均等スペース] に移動し、次のいずれかのスペース配置を選択します。

    間隔 説明
    全体 選択した左端と右端のコントロールの間にスペース コントロールが同じ間隔で表示されます。
    [下へ] 選択した最上位コントロールと一番下のコントロールの間に、スペース コントロールが同じ間隔で表示されます。
  • コントロールを中央に配置するには、再配置するコントロールを選択します。 メニューの [形式]>[ダイアログの中央に配置] に移動し、次のいずれかの配置を選択します。

    準備 説明
    垂直方向 ダイアログ ボックス内のコントロールを垂直方向に中央に配置します。
    水平方向 ダイアログ ボックス内のコントロールを水平方向に中央揃えにします。
  • プッシュ ボタンを配置するには、1 つ以上のプッシュ ボタンを選択します。 メニューの [形式]>[ボタンの配置] に移動し、次のいずれかの配置を選択します。

    準備 説明
    ダイアログ ボックスの右端にプッシュ ボタンを配置します。
    ダイアログ ボックスの下端にプッシュ ボタンを配置します。

    プッシュ ボタン以外のコントロールを選択した場合、その位置は影響を受け取らない。

必要条件

Win32

関連項目

ダイアログ ボックス コントロールを管理する
方法: コントロールを追加、編集、または削除する
方法: コントロールのアクセスおよび値を定義する