
.Net2005にてSystem.Windows.Forms.OpenFileDialogを自作したいと思っています。(ファイルを開く操作のほかにも操作したいことがあるので、ウィザード形式にしてはじめにファイルを選択させたいと考えています)
そこで、あらためてOpenFileDialogの動作を確認してみると、
結構高機能なんですよね。
http://www.aisto.com/roeder/dotnet/のリフレクターでソースを見ても、GUIまでは分かりません。
OpenFileDialogと同等の機能でソースが公開されているものや
自作するのに参考になりそうなサイト等ありますでしょうか?
なお、私が分からないと感じている点は下記です。
・「最近使ったファイル」や「マイコンピュータ」のリスト(?)が画面左に表示される。
(このリストの実現方法 またアイコンイメージはどこからどうやって取得すればよいか)
・「マイコンピュータ」をクリックするとすべてのドライブが出るが
"ハードディクスドライブ"という文字の下に青色のグラデーション下線まで表示されている
・画面右上に、戻る、1つ上のフォルダに移動するといった機能を表すボタン(?)があるが、マウスカーソルを合わせたときだけ、ボタンのように境界がふんわりと表示される
等々、いろいろ勉強しなければならないことが多いと感じています。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
今ひとつ、なぜ作るのかがわかりませんが・・・
アイコンはsystem32\shell32.dllや、explorer.exeからWIN32APIでとれます。
ボタンのように境界がふんわりと表示される>これはToolStripを使うことになると思います。
ご回答ありがとうございました。
確かにボタンのように見えたのはToolStripでした。
(Spy++で確認)
OpenFileDialogと同じものを作ろうと思っていたのですが、
やってみると結構大変で、上にあげたもの以外にも
リストに表示されたファイルを右クリックしたら、メニューを出すとか
いろいろやらないといけないことがあり、
結局、http://msdn2.microsoft.com/en-us/library/ms99646 …
を参考にカスタマイズしました。
No.2
- 回答日時:
> ・「マイコンピュータ」をクリックするとすべてのドライブが出るが
> "ハードディクスドライブ"という文字の下に青色のグラデーション下線まで表示されている
リストビューコントロールのグルーピング機能によるものです。
XP以降、Comctl32.dllのバージョン6からの機能です。
参考URL:http://msdn.microsoft.com/library/en-us/shellcc/ …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- アプリ Edgeを操作するアプリについて 4 2023/05/11 22:48
- その他(Microsoft Office) エクセルのマクロについて教えてください。 5 2023/01/21 09:39
- Windows 10 パソコンの操作ができません。。。 4 2022/06/02 18:38
- Windows 10 explorerをedgeで開く方法 2 2022/06/05 14:59
- WordPress(ワードプレス) Wordpress 複数プラグインの不具合? 1 2022/10/09 21:52
- JavaScript jsで診断コンテンツのページ内切り替えについて 1 2023/04/14 17:31
- Windows 10 windows11が突然起動しなくなりました 3 2022/06/30 17:49
- その他(OS) Mac OSの操作について 2 2022/06/08 09:19
- その他(IT・Webサービス) ホームページにカウント数を表示する 2 2022/10/28 10:37
- Visual Basic(VBA) Edge操作のアプリが例外発生に 1 2023/03/12 21:22
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
素材屋さんでよく見かける、壁...
-
このwebページのfont-family指...
-
カーソルを合わせるとボタンが...
-
PHP リロードせずに、リアルタ...
-
参照ボタン
-
CListCtrlのcheckboxサイズ変更
-
jspで作った入力フォーム内...
-
Dosブロンプトでtabを出力したい
-
重複を無くしたい
-
IEのお気に入りについて
-
ホスト名の取得できないアクセ...
-
Global.asaについて
-
.htaccessについて
-
ダブルクォーテーションで囲ま...
-
awk内で使用した変数をシェルに...
-
ActiveReportのサブレポート機...
-
PHPでドメイン名よりWhoisサー...
-
PDF出力
-
月曜日から始まる週間カレンダ...
-
CGIでリンクのような…。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
DrawImageでビットマップを拡大...
-
C#【フォルダの参照】ダイアログ
-
素材屋さんでよく見かける、壁...
-
フレームのランダム切替とブラ...
-
一時停止と再開
-
VB.NETで画像の拡大・縮小
-
PHP リロードせずに、リアルタ...
-
CListCtrlのcheckboxサイズ変更
-
Dosブロンプトでtabを出力したい
-
「取得先」という表現について
-
バッチファイルでpingの結果を...
-
shシェルスクリプト 空白行の...
-
【C#】DataGridViewの最大列数...
-
Excel VBA:特定の文字列以降(...
-
EXCEL、マクロ-改ページ行番号...
-
DTOとEntityの差は何ですか。
-
wordの差し込み印刷で文字...
-
URLのパラメータをGETのままで...
-
ゼロとNULLを区別して number_f...
-
VBA コレクションに2次元配列...
おすすめ情報