STEP1
シングルドキュメントアプリケーションで左側ペインにツリーリストを組み込む
世の中の多くのHPにはツリ-コントロ-ルVewと言う、ダイアログべ-ス見たいな物ばかりでおそらく使い物にはならないでしょう、やはり下記の画像の様にフォ-ムVewに各種コントロラ-を組み込んで使えなければ商用には使えませんし皆さんだって画像の様な構造を希望していると思いますが如何ですか?それもシングルドキュメントクラスで使わなければなりません。是非皆さんこのHPから有効なコ-ドを取得して皆さんの開発しているアプリケ-ションに応用してください。

現在作成中である、画面二分割アプリを使い左側ペインにタブキーとツリーコントロールを実際に組み込みシナリオは進行して行きます、その後にサブメニュを組み込みながら右側ペインにコントロールなど色々な機能を追加し実際に色々な操作を行っていきます、皆さんにサンプルとして全面的に公開します。。

私が現在開発中のアプリを使い参考画面にしました、赤い枠内の様に実際に初期から機能を拡張して行きます。

どの様にファイルデータにアクセスするのか?りリストの更新とか色々な管理をどの様に行えば良いのかを実際をお見せいたします、応用して下さい。
此処でデータベースを使うのは使用するユザーを限定してしまいます(一般的にデータベースアプリは無い方が大勢いますので)なのでデータベースは使わずに管理する事をお見せいたします、是非見て盗んで行って下さい。
STEP2
まずはフォームの番号なしのビューにコントロールを1個追加します、このフォームはやはり使う事にしましたなのでフォームビューは全部で5種類有ります。中学生~大学生までの皆さんが見ているのですから注意して説明しなくては行けません、高級言語では出来ない分野が数限りなくあります、皆さんは本当の意味でのプログラマーになって下さい。だって高級言語ばかりが出来る人が増えても何も出来ません(精々出来てもWEB関係だけ、ド素人と言われる分野です)、本来のMFC VC++言語が使える人達が増えなければ日本の将来どうなるの?
追加したツリーの初期化プロパテーの内容です、この様に設定して下さい。

このツリーコントロールのアルゴリズムは難問でした、どうしたら再帰的な構成を構築出来るのかまたどうやれば同一階層の同一名を拒否出来るのかと相当に苦しんだ物ですこのアルゴリズムは今では安定しており100%の構築率になっています、構築する順序はまずフォルダー構造を取得して構築して行きます、次にそのフォルダーのリストを調査して先読みしながらツリーの親を決めながら子を作り込んでいくアルゴリズムです、皆さんに出来るだけ解りやすい様に解説したいと思います、どうか応用して自分のアルゴリズムを作り込んで見るのも素晴らしい事と思います。まずはこのアルゴリズムからお見せして行きます。
STEP3
下記のコードはチョット長いですが指定されたフォルダー内を全て調査記録して帰ります、再帰的な処理を連続して行います、CArray<CString, CString >型へ動的に加算して行きます。変数名は「arrayDirectoryList」と命名しています。
リストボックスは表示はせずに演算用に裏で使います、ツリーコントロールとリストコントロールを2個ついかしましたが1個しか使わないと思います。

STEP4
どう言う事をやるのか良く見て観察して下さい、実を言うとここにコードを掲載する時はもうすでに実行して関数の振る舞いを確認済みです。

STEP5
取りあえず簡単にツリーを組み込みました、さてこれから説明しますがコードは結構多いですよ、是非理解して貴方の技にしてください。その価値は十分に有ります。
このフォルダーは現在の起動アプリケーションノフォルダー内を展開しています、解ってしまえばこんなのは非常に簡単なんです、このコードに能書きなんかいりません。最初に動いてくれさえすれば後は貴方の物です、デバッガを使い貴方が調査して理解して行けばいい事です、私もそのように先輩たちから盗んで覚えたのですから。

STEP6
フォームビューヘッダー内に記載します。

STEP7
フォームビューヘッダー内に記載します。

STEP8
ドキュメントクラスヘッダー内に記載


STEP9
メインフレームビューCPP 内に記載

STEP10
ドキュメントクラスヘッダー内に記載します

STEP11
メインフレームCPP 内に記載します

STEP12
メインフレームCPP 内に記載します

STEP13
メインフレームCPP 内に記載します

STEP14
メインフレームCPP 内に記載します


リストコントロール初期化 構造体とファイルアクセス セル高さ、TxtBoxの色を変える
VC++プログラミング セルにデータを入力します セル選択を組み込みます
BMPファイルのアクセス セル高さ、TxtBoxの色を変える 印刷機構を手動で組み込みます
Vew切り替え機構説明(No1) Vew切り替え機構説明(No2) MFC ハードコピ-を取り込むには
MFC BMPイメージを保存するには MFC ハードコピ-を取り込むには BMPファイルのアクセス
リストコントロ-ルに画像を組み込む MFC VC++ 印刷機構を組み込む