CMFCShellTreeCtrl クラス
このクラスはCMFCShellTreeCtrl
、シェル項目の階層を表示することによって CTreeCtrl クラス機能を拡張します。
詳細については、Visual Studio インストールの VC\atlmfc\src\mfc フォルダーにあるソース コードを参照してください。
構文
class CMFCShellTreeCtrl : public CTreeCtrl
メンバー
パブリック メソッド
名前 | 説明 |
---|---|
CMFCShellTreeCtrl::EnableShellContextMenu | ショートカット メニューを有効または無効にします。 |
CMFCShellTreeCtrl::GetFlags | IShellFolder::EnumObjects に 渡されるフラグの組み合わせを返します。 |
CMFCShellTreeCtrl::GetItemPath | 項目へのパスを取得します。 |
CMFCShellTreeCtrl::GetRelatedList | このCMFCShellTreeCtrl オブジェクトと共に使用して、エクスプローラーのようなウィンドウを作成する CMFCShellListCtrl クラス オブジェクトへのポインターを返します。 |
CMFCShellTreeCtrl::OnChildNotify | このメンバー関数は、このウィンドウに適用される通知メッセージを受信すると、このウィンドウの親ウィンドウによって呼び出されます。 (オーバーライド CWnd::OnChildNotify.) |
CMFCShellTreeCtrl::OnGetItemIcon | |
CMFCShellTreeCtrl::OnGetItemText | |
CMFCShellTreeCtrl::Refresh | 現在 CMFCShellTreeCtrl のオブジェクトを更新して再描画します。 |
CMFCShellTreeCtrl::SelectPath | 指定された PIDL または文字列パスに基づいて、適切なツリー コントロール項目を選択します。 |
CMFCShellTreeCtrl::SetFlags | ツリー コンテキストをフィルター処理するフラグを設定します (使用される IShellFolder::EnumObjects フラグと同様)。 |
CMFCShellTreeCtrl::SetRelatedList | 現在 CMFCShellTreeCtrl のオブジェクトとオブジェクトの間の関係を CMFCShellListCtrl 設定します。 |
解説
このクラスは、プログラムで CTreeCtrl
Windows シェル項目をツリーに含めることで、クラスを拡張します。 このクラスをオブジェクトに関連付けて、CMFCShellListCtrl
完全なエクスプローラー ウィンドウを作成できます。 その後、ツリー内の項目を選択すると、関連付けられている一覧に Windows シェル項目の一覧が表示されます。
継承階層
CMFCShellTreeCtrl
必要条件
ヘッダー: afxshelltreeCtrl.h
例
次の例では、CMFCShellTreeCtrl
クラスのオブジェクトを作成する方法を示します。 このコード スニペットは、エクスプローラー サンプルの一部です。
CMFCShellTreeCtrl m_wndShellTree;
// const int idTree = 1
CRect rectDummy(0, 0, 0, 0);
const DWORD dwViewStyle = WS_CHILD | WS_VISIBLE | TVS_HASLINES |
TVS_LINESATROOT | TVS_HASBUTTONS;
// The this pointer points to CFolderBar class which extends the CDockablePane class
m_wndShellTree.Create(dwViewStyle, rectDummy, this, idTree);
CMFCShellTreeCtrl::EnableShellContextMenu
ショートカット メニューを有効にします。
void EnableShellContextMenu(BOOL bEnable = TRUE);
パラメーター
bEnable
[in]ショートカット メニューを有効にするかどうかを指定するブール値。
CMFCShellTreeCtrl::GetFlags
CMFCShellTreeCtrl クラス オブジェクトに設定されたフラグを返します。
DWORD GetFlags() const;
戻り値
現在設定されているフラグの組み合わせを指定する DWORD 値。
解説
オブジェクトが更新されるたびに、 CMFCShellTreeCtrl
設定されたフラグがメソッド IShellFolder::EnumObjects に送信されます。 フラグは、CMFCShellTreeCtrl::SetFlags メソッドを使用して変更できます。
CMFCShellTreeCtrl::GetItemPath
CMFCShellTreeCtrl クラス オブジェクト内の項目のパスを取得します。
BOOL GetItemPath(
CString& strPath,
HTREEITEM htreeItem = NULL) const;
パラメーター
strPath
[out]文字列パラメーターへの参照。 このメソッドは、項目のパスをこのパラメーターに書き込みます。
htreeItem
[in]このメソッドは、このツリー コントロール項目のパスを取得します。
戻り値
成功した場合は 0 以外。それ以外の場合は 0。
解説
このメソッドが失敗した場合、 strPath には空の文字列が含まれます。
hTreeItem を指定しない場合、このメソッドは現在選択されている項目の文字列を取得しようとします。 項目が選択されておらず、 hTreeItem が NULL の場合、このメソッドは失敗します。
CMFCShellTreeCtrl::GetRelatedList
この CMFCShellTreeCtrl オブジェクトに関連付けられている CMFCShellListCtrl クラス オブジェクトへのポインターを返します。
CMFCShellListCtrl* GetRelatedList() const;
戻り値
このツリー コントロール オブジェクトに CMFCShellListCtrl
関連付けられているオブジェクトへのポインター。
解説
オブジェクトをCMFCShellListCtrl
オブジェクトと共にCMFCShellTreeCtrl
使用すると、エクスプローラーのようなウィンドウを作成できます。 2 つのクラスを関連付けるには、CMFCShellTreeCtrl::SetRelatedList メソッドを使用します。 関連付けられると、フレームワークによって、変更された選択範囲が自動的にCMFCShellTreeCtrl
更新CMFCShellListCtrl
されます。
CMFCShellTreeCtrl::OnChildNotify
virtual BOOL OnChildNotify(
UINT message,
WPARAM wParam,
LPARAM lParam,
LRESULT* pLResult);
パラメーター
[in] メッセージ
[in] Wparam
[in] Lparam
[in] pLResult
戻り値
解説
CMFCShellTreeCtrl::OnGetItemIcon
virtual int OnGetItemIcon(
LPAFX_SHELLITEMINFO pItem,
BOOL bSelected);
パラメーター
[in] Pitem
[in] bSelected
戻り値
解説
CMFCShellTreeCtrl::OnGetItemText
virtual CString OnGetItemText(LPAFX_SHELLITEMINFO pItem);
パラメーター
[in] Pitem
戻り値
解説
CMFCShellTreeCtrl::Refresh
CMFCShellTreeCtrl を更新して 再描画します。
void Refresh();
解説
に表示される項目の階層を更新するには、このメソッドを CMFCShellTreeCtrl
呼び出します。
CMFCShellTreeCtrl::SelectPath
指定されたパスに基づいて、CMFCShellTreeCtrl クラスの項目を選択します。
BOOL SelectPath(LPCTSTR lpszPath);
BOOL SelectPath(LPCITEMIDLIST lpidl);
パラメーター
lpszPath
[in]項目のパスを指定する文字列。
lpidl
[in]項目を指定する PIDL
戻り値
成功した場合はS_OK。それ以外の場合E_FAIL。
CMFCShellTreeCtrl::SetFlags
ツリー コンテキストをフィルター処理するフラグを設定します。
void SetFlags(
DWORD dwFlags,
BOOL bRefresh = TRUE);
パラメーター
dwFlags
[in]設定するフラグ。
bRefresh
[in]すぐに更新するかどうかを CMFCShellTreeCtrl
指定するブール値。
解説
すべての CMFCShellTreeCtrl
セット フラグを IShellFolder::EnumObjects に 渡します。 さまざまなフラグの値の詳細については、「IShellFolder::EnumObjects」を参照してください。
CMFCShellTreeCtrl::SetRelatedList
CMFCShellListCtrl オブジェクトを CMFCShellTreeCtrl オブジェクトに関連付けます。
void SetRelatedList(CMFCShellListCtrl* pShellList);
パラメーター
pShellList
[in]オブジェクトへの CMFCShellListCtrl
ポインター。
解説
このメソッドは、a CMFCShellListCtrl
CMFCShellTreeCtrl
を . これらのオブジェクトは、エクスプローラーのようなウィンドウとして表示される場合があります。ユーザーがオブジェクトCMFCShellTreeCtrl
を選択すると、その中のCMFCShellListCtrl
関連する項目が自動的に更新されます。
メソッド CMFCShellTreeCtrl::GetRelatedList を使用して、関連付けられているCMFCShellTreeCtrl
オブジェクトをCMFCShellListCtrl
取得します。
関連項目
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示