MFC   VC++   Visual Studio   Visual Studio   プログラミング

CMFCShellListCtrlでのフォルダ変更

 ここでは、「CMFCShellListCtrl」を使い、フォルダアイテムのダブルクリックなどでカレントフォルダが変わったとき、何か処理をする方法を紹介します。

 まず、処理をするための関数(ここでは「OnChangeFolder」)を用意します。
ヘッダファイル
    afx_msg LRESULT OnChangeFolder(WPARAM, LPARAM);
cppファイル
LRESULT CXXX::OnChangeFolder(WPARAM, LPARAM)
{
    // やりたい処理をここに書く

    return 0;
}
 次に、メッセージマップに以下のように追加します。
BEGIN_MESSAGE_MAP(CFolPane, CDockablePane)
    ON_REGISTERED_MESSAGE(AFX_WM_CHANGE_CURRENT_FOLDER, OnChangeFolder)
END_MESSAGE_MAP()
 これで、「CMFCShellListCtrl」内のカレントフォルダが変更されたとき、「OnChangeFolder」が呼ばれるので、関数内でやりたい処理をします。

 ここでの処理は、エクスプローラにあるアドレスバーのように、カレントフォルダのパスを表示したりするときに便利だと思います。
ランキングへ     posted by 遠雷 | Comment(0) | コントロール
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。