ページ 11

ファイルを開く

Posted: 2010年2月23日(火) 19:03
by
画像を読み込んだりするときに出てくる、
こういう「ファイルを開く」
みたいなのはできますか?
また、どのようにすればいいですか?

お願いします。 画像

Re:ファイルを開く

Posted: 2010年2月23日(火) 19:28
by バグ
開発環境によって方法が違いますんで、『オープンファイルダイアログ』をキーワードにググってみてください。多分、望んだ情報がヒットすると思います(^_^;)

Re:ファイルを開く

Posted: 2010年2月23日(火) 19:46
by
どうもありがとうございました。
ちなみに開発環境は WindowsXP
          VC++2008EE
             です。
早速検索してみます。

Re:ファイルを開く

Posted: 2010年2月23日(火) 20:19
by
早速検索してみたのですが、
いまいち↑のようなやつが出てきません。

どうすれば良いでしょうか?

Re:ファイルを開く

Posted: 2010年2月23日(火) 20:28
by MNS
コモンダイアログですよね。
http://www.geocities.jp/ky_webid/win32c/055.html
ここが参考になると思います。

Re:ファイルを開く

Posted: 2010年2月23日(火) 20:35
by
ありがとうございます。

早速やってみます。

Re:ファイルを開く

Posted: 2010年2月23日(火) 20:46
by
できました!!
テキスト以外のファイルを開くときには、
ofn.lpstrFilter = _T("text(*.txt)\0*.txt\0All files(*.*)\0*.*\0\0");
                ↑    ↑
ここの『.txt』を書き換えればいいのですか?
また、
このダイアログで、
たとえば『.png』などの画像を読み込んで、画面に表示させるにはどうすればいいのですか?

質問ばかりですいません。
どうか、よろしくお願いします。 画像

Re:ファイルを開く

Posted: 2010年2月23日(火) 20:58
by MNS
>『.txt』をすべて書き換えればいいのですか?
まあ、一応はそうですが、具体的には、
「表示する文字列\0 ワイルドカード指定を使った拡張子表記」という書式を用いるようなので、
lpstrFilter = _T("画像ファイル(.png)\0*.png\0\0");
このような感じでしょうか。(WIN32APIは良く知らないので、適当です。)

>たとえば『.png』などの画像を読み込んで、画面に表示させるにはどうすればいいのですか?
lpstrFile の値はファイルのフルパスなので、
たとえば、DXライブラリを仕様している場合には、これをファイル名としてLoadGraph等の関数で読み込み、
それをDrawGraph等の関数で画面に描画すれば良いです。

Re:ファイルを開く

Posted: 2010年2月23日(火) 21:03
by
ありがとうございます、
ようやく理解できました。

協力してくださった方々、
本当にありがとうございました。