CDockablePane
クラス
ドッキング サイトにドッキングできる、またはタブ付きペインに含めることができるペインを実装します。
構文
class CDockablePane : public CPane
メンバー
パブリック コンストラクター
名前 | 説明 |
---|---|
CDockablePane::CDockablePane |
CDockablePane オブジェクトを構築して初期化します。 |
パブリック メソッド
名前 | 説明 |
---|---|
CDockablePane::AttachToTabWnd |
別のペインにペインをアタッチします。 これにより、タブ付きペインが作成されます。 |
CDockablePane::CalcFixedLayout |
ウィンドウの四角形のサイズを返します。 |
CDockablePane::CanAcceptMiniFrame |
指定したミニ フレームをウィンドウにドッキングできるかどうかを決定します。 |
CDockablePane::CanAcceptPane |
別のペインを現在のペインにドッキングできるかどうかを決定します。 |
CDockablePane::CanAutoHide |
ペインが自動非表示モードをサポートするかどうかを指定します。 ( CBasePane::CanAutoHide をオーバーライドします)。 |
CDockablePane::CanBeAttached |
現在のペインを別のペインにドッキングできるかどうかを決定します。 |
CDockablePane::ConvertToTabbedDocument |
1 つ以上のドッキング可能なペインを MDI タブ付きドキュメントに変換します。 |
CDockablePane::CopyState |
ドッキング可能ウィンドウの状態をコピーします。 |
CDockablePane::Create |
Windows コントロールを作成し、 CDockablePane オブジェクトにアタッチします。 |
CDockablePane::CreateDefaultPaneDivider |
フレーム ウィンドウにドッキングされているウィンドウの既定の分割線を作成します。 |
CDockablePane::CreateEx |
Windows コントロールを作成し、 CDockablePane オブジェクトにアタッチします。 |
CDockablePane::CreateTabbedPane |
現在のペインからタブ付きペインを作成します。 |
CDockablePane::DockPaneContainer |
コンテナーをペインにドッキングします。 |
CDockablePane::DockPaneStandard |
アウトライン (標準) ドッキングを使用してペインをドッキングします。 |
CDockablePane::DockToFrameWindow |
内部使用。 ウィンドウをドッキングするには、 CPane::DockPane または CDockablePane::DockToWindow を使用します。 |
CDockablePane::DockToRecentPos |
ペインを、保存されている最近のドッキング位置にドッキングします。 |
CDockablePane::DockToWindow |
1 つのドッキング ウィンドウを別のドッキング ウィンドウにドッキングします。 |
CDockablePane::EnableAutohideAll |
コンテナー内の他のペインと共に、このペインの自動非表示モードを有効または無効にします。 |
CDockablePane::EnableGripper |
キャプション (グリッパー) を表示または非表示にします。 |
CDockablePane::GetAHRestoredRect |
自動非表示モードで表示される場合のペインの位置を指定します。 |
CDockablePane::GetAHSlideMode |
ウィンドウのスライド の自動非表示モードを取得します。 |
CDockablePane::GetAutoHideButton |
内部使用。 |
CDockablePane::GetAutoHideToolBar |
内部使用。 |
CDockablePane::GetCaptionHeight |
現在のキャプションの高さを返します。 |
CDockablePane::GetDefaultPaneDivider |
ペインのコンテナーの既定のウィンドウ分割線を返します。 |
CDockablePane::GetDockingStatus |
指定されたポインター位置に基づいてペインをドッキングする機能を決定します。 |
CDockablePane::GetDragSensitivity |
ドッキング ウィンドウのドラッグ感度を返します。 |
CDockablePane::GetLastPercentInPaneContainer |
コンテナー内でペインが占める領域の割合を取得します。 |
CDockablePane::GetTabArea |
ウィンドウのタブ領域を取得します。 |
CDockablePane::GetTabbedPaneRTC |
別のペインが現在のペインにドッキングされるときに作成されるタブ付きウィンドウに関するランタイム クラス情報を返します。 |
CDockablePane::HasAutoHideMode |
ドッキング ウィンドウを自動非表示モードに切り替えることができるかどうかを指定します。 |
CDockablePane::HitTest |
ユーザーがマウスをクリックするペイン内の特定の場所を指定します。 |
CDockablePane::IsAccessibilityCompatible |
内部使用。 |
CDockablePane::IsAutohideAllEnabled |
ドッキング ウィンドウとコンテナー内の他のすべてのペインを自動非表示モードで配置できるかどうかを示します。 |
CDockablePane::IsAutoHideMode |
ペインが自動非表示モードかどうかを指定します。 |
CDockablePane::IsChangeState |
内部使用。 |
CDockablePane::IsDocked |
現在のウィンドウがドッキングされているかどうかを判断します。 |
CDockablePane::IsHideInAutoHideMode |
ShowPane を呼び出して表示 (または非表示) している場合に、自動非表示モードのペインの動作を決定します。 |
CDockablePane::IsInFloatingMultiPaneFrameWnd |
ペインが複数ウィンドウ フレーム ウィンドウ内にあるかどうかを指定します。 |
CDockablePane::IsResizable |
ウィンドウのサイズを変更できるかどうかを指定します。 |
CDockablePane::IsTabLocationBottom |
タブをウィンドウの上部または下部に配置するかどうかを指定します。 |
CDockablePane::IsTracked |
ユーザーがウィンドウをドラッグするかどうかを指定します。 |
CDockablePane::IsVisible |
現在のウィンドウが表示されるかどうかを決定します。 |
CDockablePane::LoadState |
内部使用。 |
CDockablePane::OnAfterChangeParent |
ウィンドウの親が変更されたときにフレームワークによって呼び出されます。 ( CPane::OnAfterChangeParent をオーバーライドします)。 |
CDockablePane::OnAfterDockFromMiniFrame |
フローティング ドッキング バーがフレーム ウィンドウにドッキングされるときにフレームワークによって呼び出されます。 |
CDockablePane::OnBeforeChangeParent |
ウィンドウの親が変更されようとしているときにフレームワークによって呼び出されます。 ( CPane::OnBeforeChangeParent をオーバーライドします)。 |
CDockablePane::OnBeforeFloat |
ウィンドウが浮動しようとしているときにフレームワークによって呼び出されます。 ( CPane::OnBeforeFloat をオーバーライドします)。 |
CDockablePane::RemoveFromDefaultPaneDividier |
ウィンドウがドッキング解除されている場合、フレームワークはこのメソッドを呼び出します。 |
CDockablePane::ReplacePane |
ペインを指定したペインに置き換えます。 |
CDockablePane::RestoreDefaultPaneDivider |
フレームワークは、ウィンドウが逆シリアル化され、既定のウィンドウ分割線を復元するために、このメソッドを呼び出します。 |
CDockablePane::SaveState |
内部使用。 |
CDockablePane::Serialize |
ペインをシリアル化します。 ( CBasePane::Serialize をオーバーライドします)。 |
CDockablePane::SetAutoHideMode |
ドッキング ウィンドウを表示モードと自動非表示モードの間で切り替えます。 |
CDockablePane::SetAutoHideParents |
ペインの自動非表示ボタンと自動非表示ツールバーを設定します。 |
CDockablePane::SetDefaultPaneDivider |
内部使用。 |
CDockablePane::SetLastPercentInPaneContainer |
コンテナー内でペインが占める領域の割合を設定します。 |
CDockablePane::SetResizeMode |
内部使用。 |
CDockablePane::SetRestoredDefaultPaneDivider |
復元された既定のウィンドウ分割線を設定します。 |
CDockablePane::SetTabbedPaneRTC |
2 つのペインが一緒にドッキングされるときに作成されるタブ付きウィンドウのランタイム クラス情報を設定します。 |
CDockablePane::ShowPane |
ペインの表示と非表示を切り替えます。 |
CDockablePane::Slide |
ペインが自動非表示モードの場合にのみ表示されるスライド アニメーションを含むペインの表示と非表示を切り替えます。 |
CDockablePane::ToggleAutoHide |
自動非表示モードを切り替えます。 ( CPane::ToggleAutoHide をオーバーライドします。) |
CDockablePane::UndockPane |
メイン フレーム ウィンドウまたはミニフレーム ウィンドウ コンテナーからペインをドッキング解除します。 |
CDockablePane::UnSetAutoHideMode |
内部使用。 自動非表示モードを設定するには、 CDockablePane::SetAutoHideMode |
保護メソッド
名前 | 説明 |
---|---|
CDockablePane::CheckAutoHideCondition |
ドッキング ウィンドウを非表示にするかどうかを指定します (自動非表示モード)。 |
CDockablePane::CheckStopSlideCondition |
ドッキング ウィンドウの自動非表示がスライドを停止するタイミングを指定します。 |
CDockablePane::DrawCaption |
ドッキング ウィンドウのキャプション (グリッパー) を描画します。 |
CDockablePane::OnPressButtons |
ユーザーが AFX_HTCLOSE ボタンと AFX_HTMAXBUTTON ボタン以外のキャプション ボタンを押したときに呼び出されます。 |
CDockablePane::OnSlide |
ウィンドウが表示または非表示のときに、スライドの自動非表示効果をレンダリングするためにフレームワークによって呼び出されます。 |
データ メンバー
名前 | 説明 |
---|---|
CDockablePane::m_bDisableAnimation |
ドッキング可能ウィンドウの自動非表示アニメーションを無効にするかどうかを指定します。 |
CDockablePane::m_bHideInAutoHideMode |
ペインが自動非表示モードの場合のペインの動作を決定します。 |
CDockablePane::m_nSlideSteps |
自動非表示モードでペインを表示または非表示にする場合の、ペインのアニメーション速度を指定します。 |
解説
CDockablePane
には、次の機能が実装されています。
ウィンドウをメイン フレーム ウィンドウにドッキングする。
ウィンドウを自動非表示モードに切り替える。
タブ付きウィンドウにウィンドウをアタッチする。
ミニフレーム ウィンドウ内のウィンドウの浮動。
ミニフレーム ウィンドウに浮動している別のペインにペインをドッキングする。
ウィンドウのサイズを変更する。
ドッキング ウィンドウの読み込みと保存の状態。
Note
状態情報は Windows レジストリに保存されます。
キャプションの有無に関係なくペインを作成する。 キャプションにはテキスト ラベルを付けることができ、グラデーションの色で塗りつぶすことができます。
ウィンドウの内容を表示しながらウィンドウをドラッグする
ドラッグ四角形を表示しながらペインをドラッグする。
アプリケーションでドッキング ウィンドウを使用するには、 CDockablePane
クラスからウィンドウ クラスを派生させます。 派生オブジェクトをメイン フレーム ウィンドウ オブジェクトに埋め込むか、ウィンドウのインスタンスを制御するウィンドウ オブジェクトに埋め込みます。 次に、メイン フレーム ウィンドウでWM_CREATE
メッセージを処理するときに、CDockablePane::Create
メソッドまたは CDockablePane::CreateEx
メソッドを呼び出します。 最後に、 CBasePane::EnableDocking
、 CBasePane::DockPane
、または CDockablePane::AttachToTabWnd
を呼び出して、ウィンドウ オブジェクトを設定します。
カスタマイズのヒント
次のヒントは、CDockablePane
オブジェクトに適用されます。
タブ付きでないドッキング可能な 2 つのペインに対して
CDockablePane::AttachToTabWnd
を呼び出すと、タブ付きウィンドウへのポインターがppTabbedControlBar
パラメーターに返されます。 このパラメーターを使用すると、引き続きタブ付きウィンドウにタブを追加できます。CDockablePane::AttachToTabWnd
によって作成されるタブ付きペインの種類は、pTabControlBarAttachTo
パラメーターのCDockablePane
オブジェクトによって決まります。CDockablePane::SetTabbedPaneRTC
を呼び出して、CDockablePane
が作成するタブ付きペインの種類を設定できます。 既定の型は、最初にCDockablePane
を作成するときにCDockablePane::Create
のdwTabbedStyle
によって決まります。dwTabbedStyle
がAFX_CBRS_OUTLOOK_TABS
場合、既定の型はクラスCMFCOutlookBar
;dwTabbedStyle
がAFX_CBRS_REGULAR_TABS
場合、既定の型はクラスCTabbedPane
。ドッキング可能なペインを別のウィンドウにドッキングする場合は、
CDockablePane::DockToWindow
メソッドを呼び出します。 このメソッドを呼び出す前に、元のウィンドウをどこかにドッキングする必要があります。CDockablePane::m_bHideInAutoHideMode
メンバー変数は、CDockablePane::ShowPane
を呼び出すときの自動非表示モードでのドッキング可能ペインの動作を制御します。 このメンバー変数がTRUE
に設定されている場合、ドッキング可能なペインとその自動非表示ボタンは非表示になります。 それ以外の場合は、スライドインとスライドアウトが行われます。CDockablePane::m_bDisableAnimation
メンバー変数をTRUE
に設定することで、アニメーションの自動非表示を無効にすることができます。
例
次の例では、CDockablePane
クラスのさまざまなメソッドを使用してCDockablePane
オブジェクトを構成する方法を示します。 この例では、ドッキング可能ペインのすべての機能の自動非表示を有効にする方法、キャプションまたはグリッパーを有効にする方法、自動非表示モードを有効にする方法、ペインを表示する方法、自動非表示モードのペインをアニメーション化する方法を示しています。 このコード スニペットは、Visual Studio デモ サンプルの一部です。
// GetOwner is an inherited method.
CDockablePane *pParentBar = DYNAMIC_DOWNCAST(CDockablePane, GetOwner());
pParentBar->EnableAutohideAll();
pParentBar->EnableGripper(true);
pParentBar->SetAutoHideMode(true, CBRS_ALIGN_LEFT);
pParentBar->ShowPane(true, false, true);
pParentBar->Slide(true);
継承階層
要件
ヘッダー: afxDockablePane.h
CDockablePane::AttachToTabWnd
現在のペインをターゲット ペインにアタッチし、タブ付きペインを作成します。
virtual CDockablePane* AttachToTabWnd(
CDockablePane* pTabControlBarAttachTo,
AFX_DOCK_METHOD dockMethod,
BOOL bSetActive= TRUE,
CDockablePane** ppTabbedControlBar = NULL);
パラメーター
pTabControlBarAttachTo
[入力、出力]現在のペインがアタッチされているターゲット ペインを指定します。 ターゲット ペインはドッキング可能なペインである必要があります。
dockMethod
[in]ドッキング メソッドを指定します。
bSetActive
[入力] TRUE
アタッチ操作後にタブ付きペインをアクティブにする場合。それ以外の場合は FALSE
。
ppTabbedControlBar
[out]アタッチ操作の結果として表示されるタブ付きペインが含まれます。
戻り値
タブ付きペインでない場合は、現在のペインへのポインター。それ以外の場合は、アタッチ操作の結果としてタブ付きペインへのポインター。 戻り値は、現在のウィンドウをアタッチできない場合、またはエラーが発生した場合に NULL
されます。
解説
このメソッドを使用してドッキング可能なペインが別のペインにアタッチされると、次の処理が行われます。
フレームワークは、ターゲット ウィンドウ
pTabControlBarAttachTo
が通常のドッキング ウィンドウであるか、CBaseTabbedPane
から派生しているかを確認します。ターゲット ペインがタブ付きペインの場合、フレームワークは現在のペインをタブとして追加します。
ターゲット ペインが通常のドッキング ウィンドウの場合、フレームワークによってタブ付きペインが作成されます。
フレームワークは
pTabControlBarAttachTo->CreateTabbedPane
を呼び出します。 新しいタブ付きペインのスタイルは、m_pTabbedControlBarRTC
メンバーによって異なります。 既定では、このメンバーはCTabbedPane
のランタイム クラスに設定されます。AFX_CBRS_OUTLOOK_TABS
スタイルをdwTabbedStyle
パラメーターとしてCDockablePane::Create
メソッドに渡すと、ランタイム クラス オブジェクトはCMFCOutlookBar
のランタイム クラスに設定されます。 このメンバーはいつでも変更して、新しいウィンドウのスタイルを変更できます。このメソッドがタブ付きペインを作成すると、フレームワークは
pTabControlBarAttachTo
へのポインターを置き換えます (ウィンドウが複数のミニフレーム ウィンドウにドッキングまたは浮動している場合)。フレームワークは、
pTabControlBarAttachTo
ペインをタブ付きペインに最初のタブとして追加します。その後、フレームワークは現在のウィンドウを 2 番目のタブとして追加します。
現在のペインが
CBaseTabbedPane
から派生している場合、そのすべてのタブはpTabControlBarAttachTo
に移動され、現在のペインは破棄されます。 したがって、このメソッドを呼び出すときは、メソッドが戻るときに現在のウィンドウへのポインターが無効になる可能性があるため、注意してください。
ドッキング レイアウトを構築するときにペインを別のウィンドウにアタッチする場合は、 dockMethod
を DM_SHOW
に設定します。
別のペインをアタッチする前に、最初のペインをドッキングする必要があります。
CDockablePane::CalcFixedLayout
ウィンドウの四角形のサイズを返します。
virtual CSize CalcFixedLayout(
BOOL bStretch,
BOOL bHorz);
パラメーター
bStretch
[in] 使用されません。
bHorz
[in] 使用されません。
戻り値
ウィンドウの四角形のサイズを含む CSize
オブジェクト。
CDockablePane::CanAcceptMiniFrame
指定したミニフレームをペインにドッキングできるかどうかを決定します。
virtual BOOL CanAcceptMiniFrame(CPaneFrameWnd* pMiniFrame) const;
パラメーター
pMiniFrame
[in] CPaneFrameWnd
オブジェクトへのポインター。
戻り値
TRUE
pMiniFrame
ペインにドッキングできる場合は a0/&FALSE
。それ以外の場合は。
CDockablePane::CanAcceptPane
別のペインを現在のペインにドッキングできるかどうかを決定します。
virtual BOOL CanAcceptPane(const CBasePane* pBar) const;
パラメーター
pBar
[in]現在のペインにドッキングするペインを指定します。
戻り値
TRUE
指定したペインをこのペインにドッキングできる場合は 〘。それ以外の場合は FALSE
。
解説
フレームワークは、ペインが現在のペインにドッキングされる前に、このメソッドを呼び出します。
特定のペインへのドッキングを有効または無効にするには、派生クラスでこの関数をオーバーライドします。
既定では、このメソッドは、pBar
またはその親がCDockablePane
型の場合、TRUE
を返します。
CDockablePane::CanAutoHide
ペインを自動的に非表示にできるかどうかを指定します。
virtual BOOL CanAutoHide() const;
戻り値
TRUE
ペインが自動的に非表示にできる場合。それ以外の場合は FALSE
。
解説
CDockablePane::CanAutoHide
は、次のいずれかの状況で FALSE
を返します。
ペインには親がありません。
ドッキング マネージャーでは、ペインの自動非表示は許可されません。
ペインはドッキングされていません。
CDockablePane::CanBeAttached
現在のペインを別のペインにドッキングできるかどうかを決定します。
virtual BOOL CanBeAttached() const;
戻り値
TRUE
ドッキング可能なウィンドウを別のウィンドウまたはメイン フレーム ウィンドウにドッキングできる場合。それ以外の場合は FALSE
。
解説
既定では、このメソッドは常に TRUE
を返します。 CBasePane::EnableDocking
を呼び出さずにドッキングを有効または無効にするには、派生クラスでこのメソッドをオーバーライドします。
CDockablePane::CDockablePane
CDockablePane
オブジェクトを構築して初期化します。
CDockablePane();
解説
ドッキング可能なウィンドウ オブジェクトを作成したら、 CDockablePane::Create
または CDockablePane::CreateEx
を呼び出して作成します。
CDockablePane::ConvertToTabbedDocument
1 つ以上のドッキング可能なペインを MDI タブ付きドキュメントに変換します。
virtual void ConvertToTabbedDocument(BOOL bActiveTabOnly = TRUE);
パラメーター
bActiveTabOnly
[in] CTabbedPane
を変換するときは、アクティブなタブのみを変換する TRUE
を指定します。ウィンドウ内のすべてのタブを変換する FALSE
を指定します。
CDockablePane::CheckAutoHideCondition
ドッキング ウィンドウを非表示にするかどうかを指定します (自動非表示モードとも呼ばれます)。
virtual BOOL CheckAutoHideCondition();
戻り値
TRUE
非表示の条件が満たされている場合。それ以外の場合は FALSE
。
解説
フレームワークでは、タイマーを使用して、自動非表示のドッキング可能ウィンドウを非表示にするかどうかを定期的に確認します。 このメソッドは、ウィンドウがアクティブでない、ウィンドウのサイズが変更されていない、およびマウス ポインターがウィンドウの上にない場合に、 TRUE
を返します。
上記のすべての条件が満たされた場合、フレームワークはウィンドウを非表示にするために CDockablePane::Slide
を呼び出します。
CDockablePane::CheckStopSlideCondition
自動非表示ドッキング ウィンドウがスライドを停止するタイミングを指定します。
virtual BOOL CheckStopSlideCondition(BOOL bDirection);
パラメーター
bDirection
[入力] TRUE
ウィンドウが表示されている場合は〘。ウィンドウが非表示になっている場合に FALSE
します。
戻り値
TRUE
停止条件が満たされた場合。それ以外の場合は FALSE
。
解説
ドッキング可能なペインが自動非表示モードに設定されている場合、フレームワークはスライド効果を使用してペインを表示または非表示にします。 フレームワークは、ウィンドウがスライドしているときにこの関数を呼び出します。 CheckStopSlideCondition
は、ウィンドウが完全に表示されている場合、またはウィンドウが完全に非表示の場合に TRUE
を返します。
カスタム自動非表示効果を実装するには、派生クラスでこのメソッドをオーバーライドします。
CDockablePane::CopyState
ドッキング可能ウィンドウの状態をコピーします。
virtual void CopyState(CDockablePane* pOrgBar);
パラメーター
pOrgBar
[入力] ドッキング可能なペインへのポインター。
解説
CDockablePane::CopyState
は、次のメソッドを呼び出して、 pOrgBar
の状態を現在のウィンドウにコピーします。
CDockablePane::Create
Windows コントロールを作成し、 CDockablePane
オブジェクトにアタッチします。
virtual BOOL Create(
LPCTSTR lpszCaption,
CWnd* pParentWnd,
const RECT& rect,
BOOL bHasGripper,
UINT nID,
DWORD dwStyle,
DWORD dwTabbedStyle = AFX_CBRS_REGULAR_TABS,
DWORD dwControlBarStyle = AFX_DEFAULT_DOCKING_PANE_STYLE,
CCreateContext* pContext = NULL);
virtual BOOL Create(
LPCTSTR lpszWindowName,
CWnd* pParentWnd,
CSize sizeDefault,
BOOL bHasGripper,
UINT nID,
DWORD dwStyle = WS_CHILD|WS_VISIBLE|CBRS_TOP|CBRS_HIDE_INPLACE,
DWORD dwTabbedStyle = AFX_CBRS_REGULAR_TABS,
DWORD dwControlBarStyle = AFX_DEFAULT_DOCKING_PANE_STYLE);
パラメーター
lpszCaption
[in]ウィンドウ名を指定します。
pParentWnd
[入力、出力]親ウィンドウを指定します。
rect
[in]ウィンドウのサイズと位置を、 pParentWnd
のクライアント座標で指定します。
bHasGripper
[入力] TRUE
キャプション付きのペインを作成する場合。それ以外の場合は FALSE
。
nID
[in]子ウィンドウの ID を指定します。 このドッキング ウィンドウのドッキング状態を保存する場合、この値は一意である必要があります。
dwStyle
[in]ウィンドウ スタイル属性を指定します。
dwTabbedStyle
[in]ユーザーがこのウィンドウのキャプション上でウィンドウをドラッグしたときに作成されるタブ付きウィンドウのタブ付きスタイルを指定します。
dwControlBarStyle
[in]追加のスタイル属性を指定します。
pContext
[入力、出力]ウィンドウの作成コンテキストを指定します。
lpszWindowName
[in]ウィンドウ名を指定します。
sizeDefault
[in]ウィンドウのサイズを指定します。
戻り値
TRUE
ドッキング可能なウィンドウが正常に作成された場合。それ以外の場合は FALSE
。
解説
Windows ウィンドウを作成し、 CDockablePane
オブジェクトにアタッチします。
dwStyle
ウィンドウ スタイルにCBRS_FLOAT_MULTI
フラグがある場合、ミニフレーム ウィンドウはミニフレーム ウィンドウ内の他のウィンドウと共に浮動できます。 既定では、ドッキング ウィンドウは個別にのみ浮動できます。
dwTabbedStyle
パラメーターに AFX_CBRS_OUTLOOK_TABS
フラグが指定されている場合、CDockablePane::AttachToTabWnd
メソッドを使用して別のウィンドウがこのウィンドウにアタッチされている場合、ウィンドウは Outlook スタイルのタブ付きペインを作成します。 既定では、ドッキング可能なペインは、 CTabbedPane
型の通常のタブ付きペインを作成します。
CDockablePane::CreateDefaultPaneDivider
フレーム ウィンドウにドッキングされているウィンドウの既定の分割線を作成します。
static CPaneDivider* __stdcall CreateDefaultPaneDivider(
DWORD dwAlignment,
CWnd* pParent,
CRuntimeClass* pSliderRTC = NULL);
パラメーター
dwAlignment
[in]ペインをドッキングするメイン フレームの側面を指定します。 dwAlignment
CBRS_ALIGN_LEFT
またはCBRS_ALIGN_RIGHT
フラグが含まれている場合、このメソッドは垂直 (CPaneDivider::SS_VERT
) 分割線を作成します。それ以外の場合、このメソッドは水平 (CPaneDivider::SS_HORZ
) 区切り線を作成します。
pParent
[in]親フレームへのポインター。
pSliderRTC
[in] 使用されません。
戻り値
このメソッドは、新しく作成された分割線へのポインターを返すか、分割器の作成が失敗した場合に NULL
します。
解説
dwAlignment
には、次のいずれかの値を指定できます。
Value | 説明 |
---|---|
CBRS_ALIGN_TOP |
ウィンドウは、フレーム ウィンドウのクライアント領域の上部にドッキングされています。 |
CBRS_ALIGN_BOTTOM |
ウィンドウは、フレーム ウィンドウのクライアント領域の下部にドッキングされています。 |
CBRS_ALIGN_LEFT |
ウィンドウは、フレーム ウィンドウのクライアント領域の左側にドッキングされています。 |
CBRS_ALIGN_RIGHT |
ウィンドウは、フレーム ウィンドウのクライアント領域の右側にドッキングされています。 |
CDockablePane::CreateEx
Windows コントロールを作成し、 CDockablePane
オブジェクトにアタッチします。
virtual BOOL CreateEx(
DWORD dwStyleEx,
LPCTSTR lpszCaption,
CWnd* pParentWnd,
const RECT& rect,
BOOL bHasGripper,
UINT nID,
DWORD dwStyle,
DWORD dwTabbedStyle = AFX_CBRS_REGULAR_TABS,
DWORD dwControlBarStyle = AFX_DEFAULT_DOCKING_PANE_STYLE,
CCreateContext* pContext = NULL);
パラメーター
dwStyleEx
[in]新しいウィンドウの拡張スタイル属性を指定します。
lpszCaption
[in]ウィンドウ名を指定します。
pParentWnd
[入力、出力]親ウィンドウを指定します。
rect
[in]ウィンドウのサイズと位置を、 pParentWnd
のクライアント座標で指定します。
bHasGripper
[入力] TRUE
キャプション付きのペインを作成する場合。それ以外の場合は FALSE
。
nID
[in]子ウィンドウの ID を指定します。 このドッキング ウィンドウのドッキング状態を保存する場合、この値は一意である必要があります。
dwStyle
[in]ウィンドウ スタイル属性を指定します。
dwTabbedStyle
[in]ユーザーがこのウィンドウのキャプション上でウィンドウをドラッグしたときに作成されるタブ付きウィンドウのタブ付きスタイルを指定します。
dwControlBarStyle
[in]追加のスタイル属性を指定します。
pContext
[入力、出力]ウィンドウの作成コンテキストを指定します。
戻り値
TRUE
ドッキング可能なウィンドウが正常に作成された場合。それ以外の場合は FALSE
。
解説
Windows ウィンドウを作成し、 CDockablePane
オブジェクトにアタッチします。
dwStyle
ウィンドウ スタイルにCBRS_FLOAT_MULTI
フラグがある場合、ミニフレーム ウィンドウはミニフレーム ウィンドウ内の他のウィンドウと共に浮動できます。 既定では、ドッキング ウィンドウは個別にのみ浮動できます。
dwTabbedStyle
パラメーターに AFX_CBRS_OUTLOOK_TABS
フラグが指定されている場合、CDockablePane::AttachToTabWnd
メソッドを使用して別のウィンドウがこのウィンドウにアタッチされている場合、ウィンドウは Outlook スタイルのタブ付きペインを作成します。 既定では、ドッキング可能なペインは、 CTabbedPane
型の通常のタブ付きペインを作成します。
CDockablePane::CreateTabbedPane
現在のペインからタブ付きペインを作成します。
virtual CTabbedPane* CreateTabbedPane();
戻り値
新しいタブ付きペイン。作成操作が失敗した場合は NULL
。
解説
フレームワークは、このウィンドウを置き換えるタブ付きペインを作成するときに、このメソッドを呼び出します。 詳細については、CDockablePane::AttachToTabWnd
を参照してください。
タブ付きペインの作成と初期化方法をカスタマイズするには、派生クラスでこのメソッドをオーバーライドします。
タブ付きペインは、CDockablePane::CreateEx
メソッドによって初期化される、m_pTabbedControlBarRTC
メンバーに格納されているランタイム クラス情報に従って作成されます。
CDockablePane::DockPaneContainer
コンテナーをペインにドッキングします。
virtual BOOL DockPaneContainer(
CPaneContainerManager& barContainerManager,
DWORD dwAlignment,
AFX_DOCK_METHOD dockMethod);
パラメーター
barContainerManager
[in]ドッキングされているコンテナーのコンテナー マネージャーへの参照。
dwAlignment
[入力] DWORD
コンテナーをドッキングするペインの側面を指定する 〗。
dockMethod
[in] 使用されません。
戻り値
TRUE
コンテナーがウィンドウに正常にドッキングされた場合。それ以外の場合は FALSE
。
解説
dwAlignment
には、次のいずれかの値を指定できます。
Value | 説明 |
---|---|
CBRS_ALIGN_TOP |
コンテナーがペインの上部にドッキングされています。 |
CBRS_ALIGN_BOTTOM |
コンテナーはペインの下部にドッキングされています。 |
CBRS_ALIGN_LEFT |
コンテナーはペインの左側にドッキングされています。 |
CBRS_ALIGN_RIGHT |
コンテナーがペインの右側にドッキングされています。 |
CDockablePane::DockPaneStandard
アウトライン (標準) ドッキングを使用してペインをドッキングします。
virtual CPane* DockPaneStandard(BOOL& bWasDocked);
パラメーター
bWasDocked
[in]メソッドから制御が戻るときに、ウィンドウが正常にドッキングされた場合、この値には TRUE
が含まれます。それ以外の場合は、 FALSE
が含まれます。
戻り値
ウィンドウがタブ付きウィンドウにドッキングされた場合、またはドッキングの結果としてタブ付きウィンドウが作成された場合、このメソッドはタブ付きウィンドウへのポインターを返します。 ペインが正常にドッキングされた場合、このメソッドは this
ポインターを返します。 ドッキングに失敗した場合、このメソッドは NULL
を返します。
CDockablePane::DockToRecentPos
保存されているドッキング位置にペインをドッキングします。
BOOL CDockablePane::DockToRecentPos();
戻り値
TRUE
ペインが正常にドッキングされた場合は〘。それ以外の場合は FALSE
。
解説
ドッキング可能ウィンドウには、最近のドッキング情報が CRecentDockSiteInfo
オブジェクトに格納されます。
CDockablePane::DockToWindow
1 つのドッキング ウィンドウを別のドッキング ウィンドウにドッキングします。
virtual BOOL DockToWindow(
CDockablePane* pTargetWindow,
DWORD dwAlignment,
LPCRECT lpRect = NULL);
パラメーター
pTargetWindow
[入力、出力]このペインをドッキングするドッキング可能なペインを指定します。
dwAlignment
[in]ペインのドッキング配置を指定します。 CBRS_ALIGN_LEFT
、CBRS_ALIGN_TOP
、CBRS_ALIGN_RIGHT
、CBRS_ALIGN_BOTTOM
、またはCBRS_ALIGN_ANY
のいずれかです。 ( afxres.h
で定義されています。
lpRect
[in]ペインのドッキング四角形を指定します。
戻り値
TRUE
ウィンドウが正常にドッキングされた場合。それ以外の場合は FALSE
。
解説
このメソッドを呼び出して、1 つのペインを別のペインにドッキングし、 dwAlignment
で指定された配置にします。
CDockablePane::DrawCaption
ドッキング ウィンドウのキャプション (グリッパーとも呼ばれます) を描画します。
virtual void DrawCaption(
CDC* pDC,
CRect rectCaption);
パラメーター
pDC
[in]描画に使用されるデバイス コンテキストを表します。
rectCaption
[in]ウィンドウのキャプションの外接する四角形を指定します。
解説
フレームワークはこのメソッドを呼び出して、ドッキング可能なウィンドウのキャプションを描画します。
キャプションの外観をカスタマイズするには、派生クラスでこのメソッドをオーバーライドします。
CDockablePane::EnableAutohideAll
このペインとコンテナー内の他のペインの自動非表示モードを有効または無効にします。
void EnableAutohideAll(BOOL bEnable = TRUE);
パラメーター
bEnable
[入力] TRUE
ドッキング可能ウィンドウのすべての機能の自動非表示を有効にする場合は、次の操作を行います。それ以外の場合は FALSE
。
解説
ユーザーが Ctrl キーを押しながらピン ボタンをクリックしてペインを自動非表示モードに切り替えると、同じコンテナー内の他のすべてのペインも自動非表示モードに切り替わります。
特定のウィンドウでこの機能を無効にするには、 bEnable
を FALSE
に設定してこのメソッドを呼び出します。
CDockablePane::EnableGripper
キャプション (グリッパーとも呼ばれます) を表示または非表示にします。
virtual void EnableGripper(BOOL bEnable);
パラメーター
bEnable
[入力] TRUE
キャプションを有効にする場合。それ以外の場合は FALSE
。
解説
フレームワークがドッキング可能なウィンドウを作成する場合、指定された場合でも、 WS_STYLE
ウィンドウ スタイルはありません。 つまり、ウィンドウのキャプションは、フレームワークによって制御されるクライアント以外の領域ですが、この領域は標準のウィンドウ キャプションとは異なります。
キャプションはいつでも表示または非表示にすることができます。 ウィンドウがタブ付きウィンドウにタブとして追加されたとき、またはウィンドウがミニフレーム ウィンドウに浮動している場合、フレームワークはキャプションを非表示にします。
CDockablePane::GetAHRestoredRect
自動非表示モードの場合のペインの位置を指定します。
CRect GetAHRestoredRect() const;
戻り値
ウィンドウが自動非表示モードのときの位置を格納する CRect
オブジェクト。
解説
CDockablePane::GetAHSlideMode
ウィンドウのスライド の自動非表示モードを取得します。
virtual UINT GetAHSlideMode() const;
戻り値
ウィンドウのスライドの自動非表示モードを指定する UINT
。 戻り値は AFX_AHSM_MOVE
でも AFX_AHSM_STRETCH
でもかまいませんが、実装では AFX_AHSM_MOVE
のみを使用します。
解説
CDockablePane::GetCaptionHeight
現在のキャプションの高さをピクセル単位で返します。
virtual int GetCaptionHeight() const;
戻り値
キャプションの高さ (ピクセル単位)。
解説
キャプションの高さは、 CDockablePane::EnableGripper
メソッドによってキャプションが非表示になっている場合、またはウィンドウにキャプションがない場合は 0 です。
CDockablePane::GetDefaultPaneDivider
ペインのコンテナーの既定のウィンドウ分割線を返します。
CPaneDivider* GetDefaultPaneDivider() const;
戻り値
ドッキング可能なウィンドウがメイン フレーム ウィンドウにドッキングされている場合は有効な CPaneDivider
オブジェクト。ドッキング可能なウィンドウがドッキングされていない場合、またはドッキング可能ウィンドウが浮動している場合は NULL
。
解説
ウィンドウ分割線の詳細については、「 CPaneDivider
クラス」を参照してください。
CDockablePane::GetDockingStatus
指定されたポインター位置に基づいてペインをドッキングする機能を決定します。
virtual AFX_CS_STATUS GetDockingStatus(
CPoint pt,
int nSensitivity);
パラメーター
pt
[入力] ポインターの画面座標位置。
nSensitivity
[in]四角形の端から離れた距離 (ピクセル単位) は、ドッキングを有効にするためにポインターが必要です。
戻り値
次のいずれかの状態値。
AFX_CS_STATUS 値 |
意味 |
---|---|
CS_NOTHING |
ポインターがドック サイトの上にありません。 フレームワークはペインをドッキングしません。 |
CS_DOCK_IMMEDIATELY |
ポインターは、即時モードでドッキング サイトの上に配置されます (ウィンドウでは、 DT_IMMEDIATE ドッキング モードが使用されます)。 フレームワークによってペインが直ちにドッキングされます。 |
CS_DELAY_DOCK |
ポインターは、別のドッキング ペインであるか、メイン フレームのエッジであるドッキング サイト上にあります。 フレームワークは、遅延後にウィンドウをドッキングします。 この遅延の詳細については、「解説」セクションを参照してください。 |
CS_DELAY_DOCK_TO_TAB |
ポインターはドッキング サイトの上に配置され、ウィンドウがタブ付きウィンドウにドッキングされます。 これは、ポインターが別のドッキング ウィンドウのキャプションの上、またはタブ付きペインのタブ領域の上にある場合に発生します。 |
解説
フレームワークは、このメソッドを呼び出して、フローティング ウィンドウのドッキングを処理します。
DT_IMMEDIATE
ドッキング モードを使用するフローティング ツールバーまたはドッキング ウィンドウの場合、フレームワークはドッキング コマンドを遅延させ、ドッキングが発生する前にユーザーがウィンドウを親フレームのクライアント領域から移動できるようにします。 遅延の長さはミリ秒単位で測定され、 CDockingManager::m_nTimeOutBeforeToolBarDock
データ メンバーによって制御されます。 CDockingManager::m_nTimeOutBeforeToolBarDock
の既定値は 200 です。 この動作は、Microsoft Word 2007 のドッキング動作をエミュレートします。
遅延ドッキング状態 (CS_DELAY_DOCK
と CS_DELAY_DOCK_TO_TAB
) の場合、ユーザーがマウス ボタンを離すまで、フレームワークはドッキングを実行しません。 ウィンドウで DT_STANDARD
ドッキング モードを使用している場合、フレームワークは投影されたドッキング位置に四角形を表示します。 ウィンドウで DT_SMART
ドッキング モードを使用する場合、フレームワークは、投影されたドッキング位置にスマート ドッキング マーカーと半透明の四角形を表示します。 ウィンドウのドッキング モードを指定するには、 CBasePane::SetDockingMode
メソッドを呼び出します。 スマート ドッキングの詳細については、「 CDockingManager::GetSmartDockingParams
」を参照してください。
CDockablePane::GetDragSensitivity
ドッキング ウィンドウのドラッグ感度を返します。
static const CSize& GetDragSensitivity();
戻り値
ドラッグ ポイントを中心とする四角形の幅と高さをピクセル単位で格納する CSize
オブジェクト。 ドラッグ操作は、マウス ポインターがこの四角形の外側に移動するまで開始されません。
CDockablePane::GetLastPercentInPaneContainer
コンテナー ( CPaneContainer
クラス) でペインが占有する領域の割合を取得します。
int GetLastPercentInPaneContainer() const;
戻り値
コンテナー内でペインが占める領域の割合を指定する int
。
解説
このメソッドは、コンテナーがそのレイアウトを調整するときに使用されます。
CDockablePane::GetTabArea
ウィンドウのタブ領域を取得します。
virtual void GetTabArea(
CRect& rectTabAreaTop,
CRect& rectTabAreaBottom) const;
パラメーター
rectTabAreaTop
[入力] GetTabArea
タブがペインの上部にある場合は、この変数にタブ領域が入力されます。 タブがペインの下部にある場合、この変数は空の四角形で塗りつぶされます。
rectTabAreaBottom
[入力] GetTabArea
ペインの下部にタブがある場合は、この変数にタブ領域が表示されます。 タブがウィンドウの上部にある場合、この変数は空の四角形で塗りつぶされます。
解説
このメソッドは、 CDockablePane
から派生し、タブがあるクラスでのみ使用されます。 詳細については、次のトピックを参照してください。 CTabbedPane::GetTabArea
および CMFCOutlookBar::GetTabArea
CDockablePane::GetTabbedPaneRTC
別のペインが現在のペインにドッキングされるときに作成されるタブ付きウィンドウに関するランタイム クラス情報を返します。
CRuntimeClass* GetTabbedPaneRTC() const;
戻り値
ドッキング可能ウィンドウのランタイム クラス情報。
解説
動的に作成されるタブ付きペインのランタイム クラス情報を取得するには、このメソッドを呼び出します。 これは、ユーザーが 1 つのペインを別のペインのキャプションにドラッグした場合、または CDockablePane::AttachToTabWnd
メソッドを呼び出して、2 つのドッキング可能なペインからタブ付きペインをプログラムで作成する場合に発生する可能性があります。
ランタイム クラス情報は、 CDockablePane::SetTabbedPaneRTC
メソッドを呼び出すことによって設定できます。
CDockablePane::HasAutoHideMode
ドッキング ウィンドウを自動非表示モードに切り替えることができるかどうかを指定します。
virtual BOOL HasAutoHideMode() const;
戻り値
TRUE
ドッキング可能なウィンドウを自動非表示モードに切り替えることができる場合。それ以外の場合は FALSE
。
解説
特定のドッキング可能ウィンドウの自動非表示モードを無効にするには、派生クラスでこのメソッドをオーバーライドします。
CDockablePane::HitTest
ユーザーがマウスをクリックするペイン内の場所を指定します。
virtual int HitTest(
CPoint point,
BOOL bDetectCaption = FALSE);
パラメーター
point
[in]テストするポイントを指定します。
bDetectCaption
[入力] TRUE
ポイントがウィンドウのキャプション上にある場合は HTCAPTION
を返す必要がある場合は。それ以外の場合は FALSE
。
戻り値
次のいずれかの値です。
HTNOWHERE
point
がドッキング可能ウィンドウにない場合は '。HTCLIENT
point
がドッキング可能ウィンドウのクライアント領域にある場合は。HTCAPTION
point
がドッキング可能ウィンドウのキャプション領域にある場合は "。AFX_HTCLOSE
point
が閉じるボタンにある場合は a0/>。HTMAXBUTTON
point
がピン ボタンにある場合は。
CDockablePane::IsAutohideAllEnabled
ドッキング ウィンドウとコンテナー内の他のすべてのペインを自動非表示モードに切り替えることができるかどうかを示します。
virtual BOOL IsAutohideAllEnabled() const;
戻り値
TRUE
ドッキング可能なペインとコンテナー内の他のすべてのペインを自動非表示モードに切り替えることができる場合。それ以外の場合は FALSE
。
解説
ユーザーは、 Ctrl キーを押しながらドッキング ピン ボタンをクリックして、自動非表示モードを有効にします。
この動作を有効または無効にするには、 CDockablePane::EnableAutohideAll
メソッドを呼び出します。
CDockablePane::IsAutoHideMode
ペインが自動非表示モードかどうかを指定します。
virtual BOOL IsAutoHideMode() const;
戻り値
TRUE
ドッキング可能ウィンドウが自動非表示モードの場合は 〗。それ以外の場合は FALSE
。
CDockablePane::IsDocked
現在のウィンドウがドッキングされているかどうかを判断します。
virtual BOOL IsDocked() const;
戻り値
TRUE
ドッキング可能なウィンドウがミニフレーム ウィンドウに属していない場合、または別のウィンドウがあるミニフレーム ウィンドウに浮動している場合。 FALSE
ペインがミニフレーム ウィンドウの子であり、ミニフレーム ウィンドウに属する他のペインがない場合。
解説
ウィンドウがメイン フレーム ウィンドウにドッキングされているかどうかを確認するには、 CDockablePane::GetDefaultPaneDivider
を呼び出します。 メソッドがNULL
以外のポインターを返す場合、ペインはメイン フレーム ウィンドウにドッキングされます。
CDockablePane::IsHideInAutoHideMode
CDockablePane::ShowPane
を呼び出して表示 (または非表示) している場合に、自動非表示モードのペインの動作を決定します。
virtual BOOL IsHideInAutoHideMode() const;
戻り値
TRUE
自動非表示モードのときにドッキング可能なペインを非表示にする必要がある場合。それ以外の場合は FALSE
。
解説
ドッキング可能なウィンドウが自動非表示モードの場合、ウィンドウを非表示または表示するために ShowPane
を呼び出すと動作が異なります。 この動作は、静的メンバー CDockablePane::m_bHideInAutoHideMode
によって制御されます。 このメンバーが TRUE
されている場合、ドッキング可能なウィンドウとそれに関連する自動非表示ツール バーまたは自動非表示ボタンは、 ShowPane
呼び出したときに非表示または表示されます。 それ以外の場合、ドッキング可能ウィンドウはアクティブ化または非アクティブ化され、関連する自動非表示ツール バーまたは自動非表示ボタンが常に表示されます。
派生クラスでこのメソッドをオーバーライドして、個々のペインの既定の動作を変更します。
m_bHideInAutoHideMode
の既定値は FALSE
です。
CDockablePane::IsInFloatingMultiPaneFrameWnd
ペインが複数ウィンドウ フレーム ウィンドウ ( CMultiPaneFrameWnd Class
) 内にあるかどうかを指定します。
virtual BOOL IsInFloatingMultiPaneFrameWnd() const;
戻り値
TRUE
ペインがマルチペイン フレーム ウィンドウ内にある場合は 〘。それ以外の場合は FALSE
。
解説
CDockablePane::IsResizable
ウィンドウのサイズを変更できるかどうかを指定します。
virtual BOOL IsResizable() const;
戻り値
TRUE
ウィンドウのサイズが変更可能な場合は〘。それ以外の場合は FALSE
。
解説
既定では、ドッキング可能なウィンドウはサイズ変更可能です。 サイズ変更を防ぐには、派生クラスでこのメソッドをオーバーライドし、 FALSE
を返します。 FALSE
値を指定すると、CPane::DockPane
でASSERT
が失敗します。 代わりに CDockingManager::AddPane
を使用して、親フレーム内にペインをドッキングします。
サイズを変更できないペインは、浮動モードでも自動非表示モードにもならず、常に親フレームの外側の端に配置されます。
CDockablePane::IsTabLocationBottom
タブをウィンドウの上部または下部に配置するかどうかを指定します。
virtual BOOL IsTabLocationBottom() const;
戻り値
TRUE
タブがウィンドウの下部に配置されている場合。タブがウィンドウの上部にある場合に FALSE
します。
解説
詳細については、CTabbedPane::IsTabLocationBottom
を参照してください。
CDockablePane::IsTracked
ユーザーがウィンドウを移動するかどうかを指定します。
BOOL IsTracked() const;
戻り値
TRUE
ペインを移動する場合は〘。それ以外の場合は FALSE
。
CDockablePane::IsVisible
現在のウィンドウが表示されるかどうかを決定します。
virtual BOOL IsVisible() const;
戻り値
TRUE
ドッキング可能ウィンドウが表示されている場合は 〗。それ以外の場合は FALSE
。
解説
このメソッドを呼び出して、ドッキング可能ウィンドウが表示されているかどうかを確認します。 CWnd::IsWindowVisible
を呼び出したり、WS_VISIBLE
スタイルをテストしたりする代わりに、このメソッドを使用できます。 返される表示状態は、自動非表示モードが有効か無効か、および CDockablePane::IsHideInAutoHideMode
プロパティの値によって異なります。
ドッキング可能ウィンドウが自動非表示モードで、表示状態が常にFALSE
FALSE
IsHideInAutoHideMode
が返される場合。
ドッキング可能ウィンドウが自動非表示モードで、 IsHideInAutoHideMode
が表示状態 TRUE
返す場合は、関連する自動非表示ツール バーの表示状態によって異なります。
ドッキング可能ウィンドウが自動非表示モードでない場合、表示状態は CBasePane::IsVisible
メソッドによって決定されます。
## CDockablePane::LoadState
内部使用のみ。 詳細については、Visual Studio インストール先の mfc
フォルダーにあるソース コードを参照してください。 たとえば、%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc
のようにします。
virtual BOOL LoadState(
LPCTSTR lpszProfileName = NULL,
int nIndex = -1,
UINT uiID = (UINT) -1
);
CDockablePane::m_bDisableAnimation
ドッキング可能ペインの自動非表示アニメーションを無効にするかどうかを指定します。
AFX_IMPORT_DATA static BOOL m_bDisableAnimation;
CDockablePane::m_bHideInAutoHideMode
ペインが自動非表示モードの場合のペインの動作を決定します。
AFX_IMPORT_DATA static BOOL m_bHideInAutoHideMode;
解説
この値は、アプリケーション内のすべてのドッキング ウィンドウに影響します。
このメンバーを TRUE
に設定すると、ドッキング可能なペインは、 CDockablePane::ShowPane
呼び出すときに、関連する自動非表示ツール バーとボタンと共に非表示または表示されます。
このメンバーを FALSE
に設定すると、 CDockablePane::ShowPane
を呼び出すと、ドッキング可能なペインがアクティブ化または非アクティブ化されます。
CDockablePane::m_nSlideSteps
ペインが自動非表示モードの場合のアニメーション速度を指定します。
AFX_IMPORT_DATA static int m_nSlideSteps;
解説
アニメーション効果を速くするには、この値を小さくします。 アニメーション効果を遅くするには、この値を大きくします。
CDockablePane::OnAfterChangeParent
詳細については、Visual Studio インストール先の mfc
フォルダーにあるソース コードを参照してください。 たとえば、%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc
のようにします。
virtual void OnAfterChangeParent(CWnd* pWndOldParent);
パラメーター
[入力] pWndOldParent
\
解説
CDockablePane::OnAfterDockFromMiniFrame
フローティング ドッキング バーがフレーム ウィンドウにドッキングされるときにフレームワークによって呼び出されます。
virtual void OnAfterDockFromMiniFrame();
解説
既定では、このメソッドは何も実行しません。
CDockablePane::OnBeforeChangeParent
フレームワークは、ウィンドウの親を変更する前に、このメソッドを呼び出します。
virtual void OnBeforeChangeParent(
CWnd* pWndNewParent,
BOOL bDelay = FALSE);
パラメーター
pWndNewParent
[in]新しい親ウィンドウへのポインター。
bDelay
[in]ペインがドッキング解除されている場合にドッキング レイアウトの再計算を遅延するかどうかを指定する BOOL。 詳細については、CDockablePane::UndockPane
を参照してください。
解説
ペインがドッキングされていて、新しい親がドッキングを許可していない場合、このメソッドはペインのドッキングを解除します。
ウィンドウをタブ付きドキュメントに変換する場合、このメソッドは最近のドッキング位置を格納します。 フレームワークは、最近のドッキング位置を使用して、ペインがドッキング状態に戻されたときにペインの位置を復元します。
CDockablePane::OnBeforeFloat
ウィンドウがフローティング状態に遷移する前に、フレームワークはこのメソッドを呼び出します。
virtual BOOL OnBeforeFloat(
CRect& rectFloat,
AFX_DOCK_METHOD dockMethod);
パラメーター
rectFloat
[in]ウィンドウが浮動状態の場合の位置とサイズを指定します。
dockMethod
[in]ドッキング メソッドを指定します。 使用可能な値の一覧については、 CPane::DockPane
を参照してください。
戻り値
TRUE
ペインを浮動可能な場合は〘。それ以外の場合は FALSE
。
解説
このメソッドは、ペインが浮動しようとしているときにフレームワークによって呼び出されます。 ペインが浮動する前に処理を実行する場合は、派生クラスでこのメソッドをオーバーライドできます。
CDockablePane::OnPressButtons
ユーザーが AFX_HTCLOSE
ボタンと AFX_HTMAXBUTTON
ボタン以外のキャプション ボタンを押したときに呼び出されます。
virtual void OnPressButtons(UINT nHit);
パラメーター
nHit
[in]このパラメーターは使用されません。
解説
ドッキング可能なウィンドウのキャプションにカスタム ボタンを追加する場合は、ユーザーがボタンを押したときに通知を受け取るためにこのメソッドをオーバーライドします。
CDockablePane::OnSlide
ウィンドウが自動非表示モードのときにペインをアニメーション化するためにフレームワークによって呼び出されます。
virtual void OnSlide(BOOL bSlideOut);
パラメーター
bSlideOut
[入力] TRUE
ウィンドウを表示するには、ウィンドウを非表示にする FALSE
します。
解説
カスタム自動非表示効果を実装するには、派生クラスでこのメソッドをオーバーライドします。
CDockablePane::RemoveFromDefaultPaneDividier
ウィンドウがドッキング解除されている場合、フレームワークはこのメソッドを呼び出します。
void RemoveFromDefaultPaneDividier();
解説
このメソッドは、既定のウィンドウ分割線を NULL
に設定し、そのコンテナーからペインを削除します。
CDockablePane::ReplacePane
ペインを指定したペインに置き換えます。
BOOL ReplacePane(
CDockablePane* pBarToReplaceWith,
AFX_DOCK_METHOD dockMethod,
BOOL bRegisterWithFrame = FALSE);
パラメーター
pBarToReplaceWith
[入力] ドッキング可能なペインへのポインター。
dockMethod
[in] 使用されません。
bRegisterWithFrame
[in] TRUE
場合、新しいウィンドウは、古いウィンドウの親のドッキング マネージャーに登録されます。 新しいペインは、ドッキング マネージャーによって管理されているペインの一覧の古いペインのインデックスに挿入されます。
戻り値
TRUE
置換が成功した場合。それ以外の場合は FALSE
。
CDockablePane::RestoreDefaultPaneDivider
ウィンドウが逆シリアル化されると、フレームワークはこのメソッドを呼び出して、既定のウィンドウ分割線を復元します。
void RestoreDefaultPaneDivider();
解説
復元された既定のウィンドウ分割線は、現在の既定のウィンドウ分割線 (存在する場合) に置き換えられます。
CDockablePane::SetAutoHideMode
ドッキング ウィンドウを表示モードと自動非表示モードの間で切り替えます。
virtual CMFCAutoHideBar* SetAutoHideMode(
BOOL bMode,
DWORD dwAlignment,
CMFCAutoHideBar* pCurrAutoHideBar = NULL,
BOOL bUseTimer = TRUE);
パラメーター
bMode
[入力] TRUE
自動非表示モードを有効にするには、通常のドッキング モードを有効にする FALSE
。
dwAlignment
[in]作成する自動非表示ペインの配置を指定します。
pCurrAutoHideBar
[入力、出力]現在の自動非表示ツール バーへのポインター。 NULL
の可能性があります。
bUseTimer
[in]ユーザーがウィンドウを自動非表示モードに切り替えたときに自動非表示効果を使用するか、ペインをすぐに非表示にするかを指定します。
戻り値
自動非表示モードまたは NULL
に切り替えた結果として作成された自動非表示ツール バー。
解説
フレームワークは、ユーザーがピン ボタンをクリックしてドッキング可能ウィンドウを自動非表示モードまたは通常のドッキング モードに切り替えるときに、このメソッドを呼び出します。
このメソッドを呼び出して、ドッキング可能なウィンドウをプログラムで自動非表示モードに切り替えます。 ウィンドウをメイン フレーム ウィンドウにドッキングする必要があります ( CDockablePane::GetDefaultPaneDivider
は、 CPaneDivider
への有効なポインターを返す必要があります)。
CDockablePane::SetAutoHideParents
ペインの自動非表示ボタンと自動非表示ツールバーを設定します。
void SetAutoHideParents(
CMFCAutoHideBar* pToolBar,
CMFCAutoHideButton* pBtn);
パラメーター
pToolBar
[in]自動非表示ツール バーへのポインター。
pBtn
[in]自動非表示ボタンへのポインター。
CDockablePane::SetLastPercentInPaneContainer
コンテナー内のペインが占める領域の割合を設定します。
void SetLastPercentInPaneContainer(int n);
パラメーター
n
[in]コンテナー内でペインが占める領域の割合を指定する int
。
解説
フレームワークは、レイアウトの再計算時に新しい値を使用するようにウィンドウを調整します。
CDockablePane::SetRestoredDefaultPaneDivider
復元された既定のウィンドウ分割線を設定します。
void SetRestoredDefaultPaneDivider(HWND hRestoredSlider);
パラメーター
hRestoredSlider
[in]ウィンドウ分割線 (スライダー) へのハンドル。
解説
復元された既定のウィンドウ分割線は、ペインが逆シリアル化されるときに取得されます。 詳細については、CDockablePane::RestoreDefaultPaneDivider
を参照してください。
CDockablePane::SetTabbedPaneRTC
2 つのペインが一緒にドッキングされるときに作成されるタブ付きウィンドウのランタイム クラス情報を設定します。
void SetTabbedPaneRTC(CRuntimeClass* pRTC);
パラメーター
pRTC
[in]タブ付きペインのランタイム クラス情報。
解説
動的に作成されるタブ付きペインのランタイム クラス情報を設定するには、このメソッドを呼び出します。 これは、ユーザーが 1 つのペインを別のペインのキャプションにドラッグした場合、または CDockablePane::AttachToTabWnd
メソッドを呼び出して、2 つのドッキング可能なペインからタブ付きペインをプログラムで作成する場合に発生する可能性があります。
既定のランタイム クラスは、CDockablePane::Create
とCDockablePane::CreateEx
のdwTabbedStyle
パラメーターに従って設定されます。 新しいタブ付きペインをカスタマイズするには、次のいずれかのクラスからクラスを派生させます。
次に、ランタイム クラス情報へのポインターを使用してこのメソッドを呼び出します。
CDockablePane::ShowPane
ペインの表示と非表示を切り替えます。
virtual void ShowPane(
BOOL bShow,
BOOL bDelay,
BOOL bActivate);
パラメーター
bShow
[入力] TRUE
ウィンドウを表示するには、ウィンドウを非表示にする FALSE
します。
bDelay
[入力] TRUE
ドッキングレイアウトの調整を遅らせる;ドッキング レイアウトをすぐに調整 FALSE
。
bActivate
[入力] TRUE
表示されたらペインをアクティブにします。それ以外の場合は FALSE
。
解説
ドッキング可能なペインを表示または非表示にする場合は、 CWnd::ShowWindow
の代わりにこのメソッドを呼び出します。
CDockablePane::Slide
自動非表示モードのペインをアニメーション化します。
virtual void Slide(
BOOL bSlideOut,
BOOL bUseTimer = TRUE);
パラメーター
bSlideOut
[入力] TRUE
ウィンドウを表示するには、ウィンドウを非表示にする FALSE
します。
bUseTimer
[入力] TRUE
自動非表示効果を持つペインを表示または非表示にする場合は、次の操作を行います。ウィンドウをすぐに表示または非表示にする FALSE
。
解説
フレームワークは、このメソッドを呼び出して、自動非表示モードのペインをアニメーション化します。
このメソッドは、 CDockablePane::m_nSlideDefaultTimeOut
値を使用して、スライド効果のタイムアウトを決定します。 タイムアウトの既定値は 1 です。 自動非表示アルゴリズムをカスタマイズする場合は、このメンバーを変更してタイムアウトを変更します。
CDockablePane::ToggleAutoHide
ウィンドウを常に表示モードと自動非表示モードの間で切り替えます。
virtual void ToggleAutoHide();
解説
このメソッドは、 CDockablePane::SetAutoHideMode
を呼び出すことによって、ウィンドウの自動非表示モードを切り替えます。
CDockablePane::UndockPane
メイン フレーム ウィンドウまたはミニフレーム ウィンドウ コンテナーからペインをドッキング解除します。
virtual void UndockPane(BOOL bDelay = FALSE);
パラメーター
bDelay
[入力] TRUE
ドッキングレイアウトの計算を遅らせる場合。ドッキング レイアウトを直ちに再計算 FALSE
。
解説
メイン フレーム ウィンドウまたはマルチミニフレーム ウィンドウ コンテナー (他のウィンドウを含む 1 つのミニフレーム ウィンドウに浮動するペイン) からペインをドッキング解除するには、このメソッドを呼び出します。
CDockingManager
によって実行されない外部操作を実行する前に、ペインのドッキングを解除する必要があります。 たとえば、プログラムによってある場所から別の場所に移動するには、ウィンドウのドッキングを解除する必要があります。
フレームワークは、ペインが破棄される前に自動的にドッキングを解除します。