• 締切済み

MFC CFileDialog

MFCのCFileDialogを使うとでてくるファイル選択ダイアログの コントロールの位置を調べる方法ないですか?サイズや位置変更は できないのは知ってるのですが位置を調べるだけなら できないものでしょうか?カスタムする際に位置をビシっと 合わせたいので是非知りたいのです。

みんなの回答

回答No.3

 こんにちは。  コモンダイアログのテンプレートは、  VC6の場合は VC98\Include  VC2005等の場合は VC\PlatformSDK\Include  フォルダ辺りに「*.DLG拡張子」で入っています。  例えば、「CFileDialogクラス」が開くテンプレートは「FILEOPEN.DLG」の筈です。  *.DLGファイル内には、コントロールIDや配置レイアウトが記載されていますので、テキストエディタ等で開いて確認をする事が出来ます。  お目当てらしきコントロールIDを確認したら、GetDlgItem()関数でコントロールのウィンドウハンドルを取り出して、SetWindowPos()関数等で移動させて見ましょう。

  • YEND77
  • ベストアンサー率56% (21/37)
回答No.2

spy++ で確認ができると思います。

  • zwi
  • ベストアンサー率56% (730/1282)
回答No.1

まず問題はモーダル表示中は、外から操作できませんが理解されてますか? それでも位置とかを変えたい場合は、CFileDialogを継承したクラスを作れば何とでもなるような気がします(注:試していません) ちなみに、Vista以降で動作が違う見たいなので注意してください。 http://msdn.microsoft.com/ja-jp/library/dk77e5e7.aspx

関連するQ&A