CMFCAutoHideBar クラス

CMFCAutoHideBar クラスは、自動非表示機能を実装している、特殊なツール バー クラスです。

詳細については、Visual Studio インストールのvc/atlmfcフォルダーにあるソースコードを参照してください。

構文

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();

継承階層

CObject

CCmdTarget

CWnd

CBasePane

CPane

CMFCAutoHideBar

要件

ヘッダー: afxautohidebar.h

CMFCAutoHideBar::AddAutoHideWindow

自動的に隠す機能を CDockablePane ウィンドウに追加します。

CMFCAutoHideButton* AddAutoHideWindow(
    CDockablePane* pAutoHideWnd,
    DWORD dwAlignment);

パラメーター

pAutoHideWnd
から非表示にするウィンドウ。

dwAlignment
からアプリケーションウィンドウでの自動的に隠すボタンの配置を指定する値。

戻り値

解説

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

から 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);

パラメーター

から CPoint

戻り値

解説

CMFCAutoHideBar::RemoveAutoHideWindow

自動的に隠すウィンドウを削除して破棄します。

    BOOL RemoveAutoHideWindow(CDockablePane* pAutoHideWnd);

パラメーター

CDockablePane * pAutoHideWnd 自動的に隠すウィンドウを削除します。

戻り値

成功した場合は TRUE、それ以外の場合は FALSE。

Remarks

CMFCAutoHideBar::SetActiveInGroup

自動的に隠すバーにアクティブというフラグを付けます。

virtual void SetActiveInGroup(BOOL bActive);

パラメーター

からBOOL bactive TRUE に設定するとアクティブになります。それ以外の場合は FALSE。

注釈

CPane::SetActiveInGroup」を参照してください。

CMFCAutoHideBar::SetRecentVisibleState

void SetRecentVisibleState(BOOL bState);

パラメーター

bState
から設定する状態。

注釈

CMFCAutoHideBar::ShowAutoHideWindow

自動的に隠すウィンドウを示します。

BOOL ShowAutoHideWindow(
    CDockablePane* pAutoHideWnd,
    BOOL bShow,
    BOOL bDelay);

パラメーター

pAutoHideWnd
から表示するウィンドウ。

bShow
からウィンドウを表示する場合は TRUE。

bDelay
からこのパラメーターは無視されます。

戻り値

成功した場合は TRUE、それ以外の場合は FALSE。

Remarks

CMFCAutoHideBar::StretchPane

折りたたまれた状態の自動的に隠すバーを CMFCAutoHideButton オブジェクトに合わせてサイズ変更します。

virtual CSize StretchPane(
    int nLength,
    BOOL bVert);

パラメーター

nLength
からこの値は、基本実装では使用されません。 派生実装では、サイズを変更するウィンドウの長さを指定するためにこの値を使用します。

bVert
からこの値は、基本実装では使用されません。 派生実装では、自動的に隠すバーが垂直方向に折りたたまれている場合は TRUE を、自動非表示バーが水平方向に折りたたまれている場合は FALSE を使用して処理します。

戻り値

サイズを変更するウィンドウの結果のサイズ。

注釈

派生クラスは、このメソッドをオーバーライドして動作をカスタマイズできます。

CMFCAutoHideBar::UnSetAutoHideMode

自動的に隠すバーのグループの自動非表示モードを無効にします。

void UnSetAutoHideMode(CDockablePane* pFirstBarInGroup)

パラメーター

[in] pFirstBarInGroup グループ内の最初の自動非表示バーへのポインター。

注釈

CMFCAutoHideBar::UpdateVisibleState

自動的に隠すバーを再描画する必要がある場合に、フレームワークによって呼び出されます。

void UpdateVisibleState();

解説

関連項目

階層図
クラス
CPane クラス
CAutoHideDockSite クラス
CMFCAutoHideButton クラス