コモンダイアログについいて

解決


VBはじめたばかり  2005-09-09 11:35:54  No: 125096  IP: [192.*.*.*]

コモンダイアログで下記のようにして表示されるダイアログ下部の
"ファイル名"のコンボボックスに最近使ったファイルの内容が表示
されます。
この内容クリアすることはできないのでしょうか。(選択リストを
表示しない)

    CommonDialog1.Filter = "CSVファイル(*.csv)|*.csv"
    CommonDialog1.ShowOpen

また開いたファイルが最近使ったファイルに入りますが、これを入らない
ようにすることはできないのでしょうか。

ヘルプを見てもわかりませんでした。宜しくお願いします。

編集 削除
いな  2005-09-09 12:11:07  No: 125097  IP: [192.*.*.*]

CommonDialog1.Filter = "CSVファイル(*.csv)|*.csv"

CommonDialog1.Filter = ""
に変更

>また開いたファイルが最近使ったファイルに入りますが

ん〜ちょっと再現できないです。

編集 削除
VBはじめたばかり  2005-09-09 13:06:21  No: 125098  IP: [192.*.*.*]

いろいろ調べていたら下記のコードで選択されたファイルが
最近使ったファイルに入らないようになりました。

    Const OFN_DONTADDTORECENT = &H2000000
                   .
                   .
    CommonDialog1.Filter = "CSVファイル(*.csv)|*.csv"
    CommonDialog1.Flags = OFN_DONTADDTORECENT
    CommonDialog1.ShowOpen

"OFN_DONTADDTORECENT" このようなものはヘルプには書かれてい
ないのにどうやって調べるんでしょうか。
このような解説がマイクロソフトのホームページとかから調べられ
るのでしょうか?  もしあるのであればお教えください。

編集 削除
030  2005-09-09 14:16:57  No: 125099  IP: [192.*.*.*]

まずは本家がやはり一番情報量があります
http://msdn.microsoft.com/library/

ここにありました
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/userinput/commondialogboxlibrary/commondialogboxreference/commondialogboxstructures/openfilename.asp

MSDNライブラリのVisual Basciドキュメントのコモンダイアログコントロールの解説には
>コモン ダイアログ コントロールは、Visual Basic と、Windows の COMDLG32.DLL 
>ダイナミック リンク ライブラリの各種ルーチンとのインターフェイスです
と書かれています。
ここからコモンダイアログとAPIのGetOpenFileNameが同じ"comdlg32.dll"を必要とする
ことから同じAPIを使っているんじゃないかと推測する必要とかはありますね。

編集 削除
VBはじめたばかり  2005-09-09 15:42:24  No: 125100  IP: [192.*.*.*]

ありがとうございました。
まだまだ勉強不足であることを痛感しました。

編集 削除