CFileDialogで右クリックすると出るメニューを止めたい – プログラミング – Home

CFileDialogで右クリックする...
 
通知
すべてクリア

[解決済] CFileDialogで右クリックすると出るメニューを止めたい


りい
 りい
(@りい)
ゲスト
結合: 15年前
投稿: 2
Topic starter  

初めて投稿させて頂きます。
りいと申します。

MFCでGUIアプリケーションを開発しています。
「メニュー→ファイル→保存」で出てくるCFileDialogがありますが、
ファイルリスト上で右クリックするとポップアップメニューが出てきます。

ファイルがある場所での右クリックと
ファイルが無い場所での右クリックで
2種類のポップアップメニューがありまして、
その両方を止めたいのですがうまくいきません。

単純にCFileDialogを派生させてWM_RBOTTONDOWNを取ればいいと
考えたのですが、イベントハンドラで取れません。

どなたか方法をご存じの方がおられましたらご教授下さい。

環境
開発環境:visualStudio .NET 2003
OS:XP
開発アプリ:MFCアプリケーション


引用未解決
トピックタグ
仲澤@失業者
(@uncle_kei)
Prominent Member
結合: 5年前
投稿: 828
 

SPY++で見るとわかりますが、これらのコンテキストメニューは
CFileDialogが出しているわけではありません。その下請けの
CLASS「SHELLDLL_DefView」がWM_CONTEXTMENUを処理しているようです。
従って、細かい制御を行うにはこのウインドウのハンドルを取得して
サブクラス化し、メッセージを横取りする必要があると考えられます。


返信引用
りい
 りい
(@りい)
ゲスト
結合: 15年前
投稿: 2
Topic starter  

仲澤@失業者様

ご回答ありがとうございました!
SHELLDLL_DefVeiwをフックすることで対応することができました!!
助かりました!

今後ともよろしくお願い致します。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました