CMFCAutoHideBar クラス
CMFCAutoHideBar
クラスは、自動非表示機能を実装している、特殊なツール バー クラスです。
詳細については、Visual Studio のインストールの VC\atlmfc\src\mfc フォルダーにあるソース コードを参照してください。
構文
class CMFCAutoHideBar : public CPane
メンバー
パブリック コンストラクター
名前 | 説明 |
---|---|
CMFCAutoHideBar::CMFCAutoHideBar |
パブリック メソッド
名前 | 説明 |
---|---|
CMFCAutoHideBar::AddAutoHideWindow | |
CMFCAutoHideBar::AllowShowOnPaneMenu | ( CPane::AllowShowOnPaneMenu をオーバーライドします)。 |
CMFCAutoHideBar::CalcFixedLayout | ( をオーバーライドしますCBasePane::CalcFixedLayout.) |
CMFCAutoHideBar::Create | コントロール バーを作成し、 CPane オブジェクトにアタッチします。 ( をオーバーライドしますCPane::Create.) |
CMFCAutoHideBar::GetFirstAHWindow | |
CMFCAutoHideBar::GetVisibleCount | |
CMFCAutoHideBar::OnShowControlBarMenu | 特殊ウィンドウ メニューが表示されるときにフレームワークによって呼び出されます。 ( をオーバーライドしますCPane::OnShowControlBarMenu.) |
CMFCAutoHideBar::RemoveAutoHideWindow | |
CMFCAutoHideBar::SetActiveInGroup | ( をオーバーライドしますCPane::SetActiveInGroup.) |
CMFCAutoHideBar::SetRecentVisibleState | |
CMFCAutoHideBar::ShowAutoHideWindow | |
CMFCAutoHideBar::StretchPane | 垂直または水平方向にウィンドウを拡大します。 ( をオーバーライドしますCBasePane::StretchPane.) |
CMFCAutoHideBar::UnSetAutoHideMode | |
CMFCAutoHideBar::UpdateVisibleState |
データ メンバー
名前 | 説明 |
---|---|
CMFCAutoHideBar::m_nShowAHWndDelay | ユーザーが CMFCAutoHideButton クラスの上にマウス カーソルを置いてから フレームワークに関連付けられたウィンドウが表示されるまでの時間の遅延。 |
解説
ユーザーがドック ウィンドウを自動非表示モードに切り替えると、フレームワークは自動的に CMFCAutoHideBar
オブジェクトを作成します。 また、必要な CAutoHideDockSite および CMFCAutoHideButton オブジェクトも作成します。 各 CAutoHideDockSite
オブジェクトは、個別の CMFCAutoHideButton
に関連付けられます。
CMFCAutoHideBar
クラスは、ユーザーのマウスが CMFCAutoHideButton
の上に移動したときの CAutoHideDockSite
の表示を実装しています。 ツール バーが WM_MOUSEMOVE メッセージを受信すると、CMFCAutoHideBar
がタイマーを開始します。 タイマーが終了したら、ツール バーに WM_TIMER イベント通知を送信します。 ツール バーは、タイマーが開始したときにマウス ポインターが位置していた自動非表示ボタン上にまだマウス ポインターがあるかどうかをチェックして、このイベントを処理します。 ある場合は、アタッチされている CAutoHideDockSite
が表示されます。
タイマーの遅延の長さを制御するには、m_nShowAHWndDelay
を設定します。 既定値は 400 ミリ秒です。
例
CMFCAutoHideBar
オブジェクトを構築して、その GetDockSiteRow
メソッドを使用する方法を、次の例に示します。
CMFCAutoHideBar *pParentBar = new CMFCAutoHideBar();
CDockingPanesRow *pParentRow = pParentBar->GetDockSiteRow();
継承階層
要件
ヘッダー: afxautohidebar.h
CMFCAutoHideBar::AddAutoHideWindow
自動的に隠す機能を CDockablePane
ウィンドウに追加します。
CMFCAutoHideButton* AddAutoHideWindow(
CDockablePane* pAutoHideWnd,
DWORD dwAlignment);
パラメーター
pAutoHideWnd
[in]非表示にするウィンドウ。
dwAlignment
[in]自動非表示ボタンとアプリケーション ウィンドウの配置を指定する値。
戻り値
解説
dwAlignment パラメーターは、自動非表示ボタンがアプリケーション内のどこに存在するかを示します。 このパラメーターは次のいずれかの値に設定できます。
CBRS_ALIGN_LEFT
CBRS_ALIGN_RIGHT
CBRS_ALIGN_TOP
CBRS_ALIGN_BOTTOM
CMFCAutoHideBar::AllowShowOnPaneMenu
virtual BOOL AllowShowOnPaneMenu() const;
戻り値
解説
CMFCAutoHideBar::CalcFixedLayout
virtual CSize CalcFixedLayout(
BOOL bStretch,
BOOL bHorz);
パラメーター
[入力] bStretch
[in] bHorz
戻り値
解説
CMFCAutoHideBar::CMFCAutoHideBar
CMFCAutoHideBar オブジェクトを構築します。
CMFCAutoHideBar();
解説
CMFCAutoHideBar::Create
virtual BOOL Create(
LPCTSTR lpszClassName,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID,
DWORD dwControlBarStyle = AFX_DEFAULT_PANE_STYLE,
CCreateContext* pContext = NULL);
パラメーター
lpszClassName
dwStyle
rect
pParentWnd
nID
dwControlBarStyle
pContext
戻り値
解説
CMFCAutoHideBar::GetFirstAHWindow
アプリケーションの最初の自動非表示ウィンドウへのポインターを返します。
CDockablePane* GetFirstAHWindow();
戻り値
アプリケーションの最初の自動非表示ウィンドウ、または NULL (ウィンドウがない場合)。
解説
CMFCAutoHideBar::GetVisibleCount
自動的に隠すボタンのうち、表示されているものの数を取得します。
int GetVisibleCount();
戻り値
自動的に隠すボタンのうち、表示されているものの数を返します。
解説
CMFCAutoHideBar::m_nShowAHWndDelay
ユーザーが CMFCAutoHideButton クラスの上にマウス カーソルを置いてから フレームワークに関連付けられたウィンドウが表示されるまでの時間の遅延。
int CMFCAutoHideBar::m_nShowAHWndDelay = 400;
解説
ユーザーがマウス カーソルを CMFCAutoHideButton
の上に置くと、関連付けられたウィンドウがフレームワークに表示されるまでに若干の遅延があります。 このパラメーターは、その遅延の長さをミリ秒単位で決定します。
CMFCAutoHideBar::OnShowControlBarMenu
virtual BOOL OnShowControlBarMenu(CPoint);
パラメーター
[in] CPoint
戻り値
解説
CMFCAutoHideBar::RemoveAutoHideWindow
自動的に隠すウィンドウを削除して破棄します。
BOOL RemoveAutoHideWindow(CDockablePane* pAutoHideWnd);
パラメーター
CDockablePane* pAutoHideWnd 削除する自動非表示ウィンドウ。
戻り値
成功した場合は TRUE、それ以外の場合は FALSE。
解説
CMFCAutoHideBar::SetActiveInGroup
自動的に隠すバーにアクティブというフラグを付けます。
virtual void SetActiveInGroup(BOOL bActive);
パラメーター
[in]BOOL bActive アクティブに設定する場合は TRUE、それ以外の場合は FALSE。
解説
「 CPane::SetActiveInGroup」を参照してください。
CMFCAutoHideBar::SetRecentVisibleState
void SetRecentVisibleState(BOOL bState);
パラメーター
bState
[in]設定する状態。
解説
CMFCAutoHideBar::ShowAutoHideWindow
自動的に隠すウィンドウを示します。
BOOL ShowAutoHideWindow(
CDockablePane* pAutoHideWnd,
BOOL bShow,
BOOL bDelay);
パラメーター
pAutoHideWnd
[in]表示するウィンドウ。
bShow
[in]ウィンドウを表示する場合は TRUE。
bDelay
[in]このパラメーターは無視されます。
戻り値
成功した場合は TRUE、それ以外の場合は FALSE。
解説
CMFCAutoHideBar::StretchPane
折りたたまれた状態の自動的に隠すバーを CMFCAutoHideButton
オブジェクトに合わせてサイズ変更します。
virtual CSize StretchPane(
int nLength,
BOOL bVert);
パラメーター
nLength
[in]この値は、基本実装では使用されません。 派生実装では、サイズを変更するウィンドウの長さを指定するためにこの値を使用します。
bVert
[in]この値は、基本実装では使用されません。 派生実装では、自動非表示バーが垂直方向に折りたたまれているケースを処理するには TRUE を使用し、自動非表示バーが水平方向に折りたたまれている場合は FALSE を使用します。
戻り値
サイズを変更するウィンドウの結果のサイズ。
解説
派生クラスは、このメソッドをオーバーライドして動作をカスタマイズできます。
CMFCAutoHideBar::UnSetAutoHideMode
自動的に隠すバーのグループの自動非表示モードを無効にします。
void UnSetAutoHideMode(CDockablePane* pFirstBarInGroup)
パラメーター
[入力] pFirstBarInGroup グループ内の最初の自動非表示バーへのポインター。
解説
CMFCAutoHideBar::UpdateVisibleState
自動的に隠すバーを再描画する必要がある場合に、フレームワークによって呼び出されます。
void UpdateVisibleState();
解説
関連項目
階層図
クラス
CPane クラス
CAutoHideDockSite クラス
CMFCAutoHideButton クラス