CFrameWndEx クラス
更新 : 2007 年 11 月
Windows のシングル ドキュメント インターフェイス (SDI: Single Document Interface) のオーバーラップ フレーム ウィンドウまたはポップアップ フレーム ウィンドウの機能を実装し、ウィンドウを管理するメンバを提供します。CFrameWnd クラスを拡張します。
class CFrameWndEx : public CFrameWnd
メンバ
パブリック メソッド
名前 |
説明 |
---|---|
OLE クライアント項目とフレームのクライアント領域のレイアウトを調整します。 |
|
CFrameWndEx::AddDockSite |
このメソッドは使用されません。 |
コントロール バーをドッキング マネージャに登録します。 |
|
フレーム ウィンドウにドッキングされるすべてのペインのレイアウトを再計算します。 |
|
フレーム メニューを設定した後、コマンド処理がアイドルのときに更新します。 |
|
指定されたペインをフレーム ウィンドウにドッキングします。 |
|
ペインを別のペインの左側にドッキングします。 |
|
ペインがメイン フレーム ウィンドウの指定した辺にドッキングされている場合に、ペインの自動非表示モードを有効にします。 |
|
フレーム ウィンドウに属するペインのドッキングを有効にします。 |
|
全画面表示モードでのメイン メニューの表示と非表示を切り替えます。 |
|
フレーム ウィンドウの全画面表示モードを有効にします。 |
|
ドッキング状態の読み込みを有効または無効にします。 |
|
ペイン メニューの自動処理を有効または無効にします。 |
|
現在表示されているポップアップ メニューへのポインタを返します。 |
|
フレームワークによってフレーム ウィンドウが読み込まれたときにユーザーが指定したリソース ID を返します。 |
|
フレーム ウィンドウの CDockingManager クラス オブジェクトを取得します。 |
|
フレーム ウィンドウに関連付けられているメニュー バー オブジェクトへのポインタを返します。 |
|
指定した ID を持つペインへのポインタを返します。 |
|
フレームのリボン バー コントロールを取得します。 |
|
ティアオフ状態になっているペイン オブジェクトのリストを返します。 |
|
アプリケーションがツール バー ボタンのツールヒントを表示するときに、フレームワークによって呼び出されます。 |
|
ペインをドッキング マネージャに登録します。 |
|
フレーム ウィンドウが全画面表示モードかどうかを判断します。 |
|
メニュー バー オブジェクトへのポインタが有効かどうかを判定します。 |
|
点が配置ゾーンにあるかどうかを示します。 |
|
フレーム ウィンドウが印刷プレビュー モードかどうかを示します。 |
|
このメソッドは、フレーム ウィンドウを作成してそのリソースを読み込むために、構築の後に呼び出されます。 |
|
OLE クライアントの境界線の調整を実装します。 |
|
フレームワークは、ユーザー入力が切り替えられたとき、またはフレームから離れたときに、このメソッドを呼び出します。 |
|
アプリケーションが選択または選択解除されたときに、フレームワークによって呼び出されます。 |
|
フレームを変更するためにビジュアル マネージャを変更する必要がある場合に、フレームワークによって呼び出されます。 |
|
フレームワークはフレームを閉じるために、このメソッドを呼び出します。 |
|
ドッキングできるペインの [閉じる] をユーザーがクリックしたときに、フレームワークによって呼び出されます。 |
|
ユーザーが浮動ミニフレーム ウィンドウの [閉じる] をクリックすると、フレームワークによって呼び出されます。 |
|
アクティブなポップアップ メニューが WM_DESTROY メッセージを処理するときに、フレームワークによって呼び出されます。 |
|
コマンド メッセージをディスパッチします。 |
|
コンテキスト関連ヘルプを表示するために、フレームワークによって呼び出されます。 |
|
フレームが作成された後に、フレームワークによって呼び出されます。 |
|
フレームが破棄されるときに、フレームワークによって呼び出されます。 |
|
アプリケーションがメニュー項目に関連付けられたイメージを描画するときに、フレームワークによって呼び出されます。 |
|
CMFCPopupMenu オブジェクトが WM_PAINT メッセージを処理するときに、フレームワークによって呼び出されます。 |
|
Desktop Window Manager (DWM) コンポジションが有効または無効になったときに、フレームワークによって呼び出されます。 |
|
フレームの移動またはサイズ変更が終了したときに、フレームワークによって呼び出されます。 |
|
ウィンドウのサイズ制限を設定するためにフレームのサイズが変更されたときに、フレームワークによって呼び出されます。 |
|
コマンド処理がアイドルのときにフレーム表示を更新するために、フレームワークによって呼び出されます。 |
|
ユーザーがマウスの左ボタンを押すと、フレームワークからこのメソッドが呼び出されます。 |
|
ユーザーがマウスの左ボタンを離すと、フレームワークからこのメソッドが呼び出されます。 |
|
CMFCToolBarButton オブジェクトが WM_NCHITTEST メッセージを処理するときに、フレームワークによって呼び出されます。 |
|
メニューが表示され、ユーザーがコマンドに対応していないキーを押したときに、フレームワークによって呼び出されます。 |
|
フレームワークは、ポインタが移動したときにこのメソッドを呼び出します。 |
|
ペイン ウィンドウが移動されたときに、フレームワークによって呼び出されます。 |
|
フレームの非クライアント領域を再描画して、アクティブ状態の変化を示すときに、フレームワークによって呼び出されます。 |
|
クライアント領域のサイズと位置を計算する必要があるときに、フレームワークによって呼び出されます。 |
|
ポインタを移動するとき、またはマウス ボタンを押したときや離したときに、フレームワークによって呼び出されます。 |
|
ポインタが非クライアント領域に移動したときに、フレームワークによって呼び出されます。 |
|
非クライアント領域を描画する必要があるときに、フレームワークによって呼び出されます。 |
|
ペインの表示を制御するために、フレームワークによって呼び出されます。 |
|
ユーザーが印刷プレビュー モードを変更したときに、フレームワークによって呼び出されます。 |
|
電源管理イベントが発生したときに、フレームワークによって呼び出されます。 |
|
フレーム ウィンドウ メニューを置き換えるために、フレームワークによって呼び出されます。 |
|
フレームの印刷プレビュー モードを設定するために、フレームワークによって呼び出されます。 |
|
ウィンドウのテキストを設定するために、フレームワークによって呼び出されます。 |
|
簡易カスタマイズ ペインが有効になるときに、フレームワークによって呼び出されます。 |
|
ペインを表示または非表示にするために、フレームワークによって呼び出されます。 |
|
ポップアップ メニューが有効になるときに、フレームワークによって呼び出されます。 |
|
フレームワークは、フレームのサイズが変更された後にこのメソッドを呼び出します。 |
|
フレームワークは、ユーザーがフレームのサイズを変更したときにこのメソッドを呼び出します。 |
|
システム カラーが変更されたときに、フレームワークによって呼び出されます。 |
|
ティアオフ バーのあるメニューが有効になるときに、フレームワークによって呼び出されます。 |
|
ツール バーのコンテキスト メニューを構築するために、フレームワークによって呼び出されます。 |
|
フレームワークは、新しいツール バーを作成するためにこのメソッドを呼び出します。 |
|
ツール バーが削除されるときに、フレームワークによって呼び出されます。 |
|
フレーム メニューを設定するために、フレームワークによって呼び出されます。 |
|
フレームワークは、フレーム ウィンドウのタイトル バーを更新するときにこのメソッドを呼び出します。 |
|
ペイン メニューを更新するために、フレームワークによって呼び出されます。 |
|
ウィンドウ管理メソッドの呼び出しのために、フレーム サイズ、位置、または z オーダーが変更されたときに、フレームワークによって呼び出されます。 |
|
指定した点を含むドッキング ペインを返します。 |
|
特定のウィンドウ メッセージをディスパッチする前に処理します。 |
|
フレームと、その子ウィンドウのレイアウトを調整します。 |
|
ペインの登録を解除し、ドッキング マネージャの内部リストから削除します。 |
|
ドッキング レイアウトをレジストリに保存されているドッキング状態に戻します。 |
|
印刷プレビュー フレーム ウィンドウを設定します。 |
|
ユーザー定義コマンドをツール バー メニューに挿入します。 |
|
メイン フレームの全画面表示モードと通常モードを切り替えます。 |
|
指定されたペインの表示と非表示を切り替えます。 |
|
ウィンドウ フレームのキャプションを更新するために、フレームワークによって呼び出されます。 |
|
WinHelp アプリケーションまたはコンテキスト関連ヘルプを起動します。 |
使用例
CFrameWndEx クラスからクラスを派生させる方法を次のコード例に示します。この例では、サブクラスのメソッド シグネチャと、OnShowPopupMenu メソッドをオーバーライドする方法を示します。このコード スニペットは、「WordPad サンプル : MFC ワードパッド アプリケーション」の一部です。
class CMainFrame : public CFrameWndEx
{
protected: // create from serialization only
CMainFrame();
DECLARE_DYNCREATE(CMainFrame)
// Attributes
public:
HICON m_hIconDoc;
HICON m_hIconText;
HICON m_hIconWrite;
HICON GetIcon(int nDocType);
// Operations
public:
void UpdateMRUFilesList ()
{
m_wndTaskPane.UpdateMRUFilesList ();
}
void OnChangeLook ();
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CMainFrame)
public:
virtual void ActivateFrame(int nCmdShow = -1);
virtual BOOL LoadFrame(UINT nIDResource, DWORD dwDefaultStyle = WS_OVERLAPPEDWINDOW | FWS_ADDTOTITLE, CWnd* pParentWnd = NULL, CCreateContext* pContext = NULL);
protected:
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
virtual BOOL OnCommand(WPARAM wParam, LPARAM lParam);
//}}AFX_VIRTUAL
virtual BOOL OnShowPopupMenu (CMFCPopupMenu* pMenuPopup);
virtual BOOL OnTearOffMenu (CMFCPopupMenu* pMenuPopup, CPane* pBar);
protected:
void AdjustObjectSubmenu (CMFCPopupMenu* pMenuPopup);
void AdjustColorsMenu (CMFCPopupMenu* pMenuPopup, UINT uiId);
// Implementation
public:
virtual ~CMainFrame();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
public:
CMFCMenuBar m_wndMenuBar;
CMFCToolBar m_wndToolBar;
CMFCStatusBar m_wndStatusBar;
CFormatBar m_wndFormatBar;
CRulerBar m_wndRulerBar;
CTaskPane m_wndTaskPane;
protected: // control bar embedded members
BOOL CreateMenuBar();
BOOL CreateToolBar();
BOOL CreateFormatBar();
BOOL CreateStatusBar();
BOOL CreateRulerBar();
BOOL CreateTaskPane ();
// Generated message map functions
protected:
//{{AFX_MSG(CMainFrame)
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
afx_msg void OnSysColorChange();
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg void OnMove(int x, int y);
afx_msg void OnHelpFinder();
afx_msg void OnDropFiles(HDROP hDropInfo);
afx_msg void OnFontChange();
afx_msg BOOL OnQueryNewPalette();
afx_msg void OnPaletteChanged(CWnd* pFocusWnd);
afx_msg void OnDevModeChange(LPTSTR lpDeviceName);
afx_msg void OnViewCustomize();
afx_msg void OnViewFullScreen();
//}}AFX_MSG
afx_msg LRESULT OnBarState(WPARAM wParam, LPARAM lParam);
afx_msg LRESULT OnOpenMsg(WPARAM wParam, LPARAM lParam);
afx_msg LRESULT OnHelpCustomizeToolbars(WPARAM wp, LPARAM lp);
afx_msg LRESULT OnStartCustomize(WPARAM wp, LPARAM lp);
afx_msg LRESULT OnToolbarCreateNew(WPARAM,LPARAM);
afx_msg LRESULT OnGetDocumentColors(WPARAM,LPARAM);
afx_msg void OnDummy();
afx_msg void OnAskQuestion();
DECLARE_MESSAGE_MAP()
};
...
BOOL CMainFrame::OnShowPopupMenu (CMFCPopupMenu* pMenuPopup)
{
BOOL bRes = CFrameWndEx::OnShowPopupMenu (pMenuPopup);
if (pMenuPopup != NULL && !pMenuPopup->IsCustomizePane())
{
AdjustObjectSubmenu (pMenuPopup);
AdjustColorsMenu (pMenuPopup, ID_CHAR_COLOR);
}
return bRes;
}
継承階層
必要条件
ヘッダー : afxframewndex.h