Vewにツリ-コントロ-ルを追加(No4)

ビュ-の切り替え機構で内部のフォ-ムビュ-にツリ-コントロ-ルを追加して行きます、私の作り方では例外は発生せずリリ-スバ-ジョンまで安定して動作する事を私のアプリケ-ション作成で既に確認が済んでいます、皆さん安心して私のコ-ドを真似し貴方のアプリケ-ションに実装してください。

大勢の皆さんが悩んでいるようなので初期化から実際の処理を行う過程をコードまで含めて皆さんが応用が出来る様になるまで掲載する事にしました、コ-ドはサブメニュ-を含めて非常に多いです、始めから自分の考えを整理するためにも順序だててお伝えしなければ行けないと思います、コントロ-ルリストに付いても並行して行いますので皆さん宜しくお願いいたします。


一番始めに準備する物は?

準備する物

上記項目を見てピンとくる方は既に確認過程の方だと思います、そうでない方は最初に理解して置いて下さい

簡単なアルゴリズム

簡単なアルゴリズムは下記の様な流れです。

一番最初にツリ-コントロ-ルに組み込む項目リストを作成します。
基本的に絶えずツリ-コントロ-ルのリストの追加をしようと(項目リストの内容)している項目をツリ-内から検索を行い、同一な項目が無ければその項目の追加を行い、又すでに有るならばその項目は無視し次の項目を確認して行きます、最後の項目まで延々と繰り返します。


ツリ-に追加するファイルを検索

指定されたヂレクトリ-内のフォルダ-又ファイルを残らずリストアップして戻ります、是非使ってみて下さい。

ツリ-コントロ-ルを実装します


各押し釦にハンドラ-を追加しウインドウズがどの様に機能するのか理解が出来る様に構築します、教材にピッタリだと思いますが貴方が苦労して得とくする方法も素晴らしく進歩すると思います、ツリ-の動きまでとコントロ-ルの表示も例として組み込みます、あ!勿論このHPで出来るだけ細かく説明しますので御安心してください。ただ教材としてこのプロジェクトの販売もしたいと私は考えています。非常に良い教材になると思います

これからメッセージを発行して行きます

これから色々な場面を想定して行きその都度ウインドウズとメインフレ-ム及びフォ-ムビュ-がどの様なプロセスで応答していくのかも実際に起動させながら色々な処理、構造体を使用したファイル処理、例えば印刷とかBMPの読み出し又貼り付け等々私が知る全ての処理もご紹介したい、印刷用紙はどうやるの?文字の書式はどうするの?とか数限りなく存在します

下記の図の様に流れます

皆さん頑張って勉強して下さい

私のHPへ来られる方は解らない・例外の発生・調査しても情報が無い等々色々な方がいらっしゃいます、海外からも多数の方が来ます、私も他のHPを見ていますが無いんです!実際に必要な情報が有りません。確信をついた説明がないんです応用の利く説明が皆無です、だから私は確信をついた確信的な説明を心がけています皆さんに応用が利くように説明しているつもりです。でも説明範囲が広すぎて遠回りを余儀なくされていますがでもね!皆さんが上達するには悩む事が最重要だと私は思うんです。

いよいよコントロ-ル内部を表示する

この部分は「OnDrawItem」から呼び出されますが、処理時間は最短で終わらせなければ他のアプリケ-ションに影響が発生しますあくまでもタイムシェアリング処理に影響を与える事が無いようにプログラムします、余計な処理はしない用に工夫する事が重要になる事を肝にしっかりと叩き込んで下さい、もう一度言いますが無駄な処理は絶対に行わないと覚悟してコ-ティングして下さい。

前準備の項目です

表示処理の概要


罫線が引かれています

コ-ドは下記(赤枠内)をご覧ください

コントロ-ルリストはこの様にして作成して行きます

文字列を表示します

コ-ドは下記の様に追加

これからの作業

コントロ-ルの幅・高さを変更してください、どんなに自由に変更しても表示は崩れません全て再配置可能な制御を行っているからです。この他の問題はまだまだ沢山あります、例を挙げましょう、セルが選択時どうするか、セルの入力は?セルの反転及び非反転の構造は……貴方を悩ます事は沢山存在します。まだありますよ!ファイルはどうしますか?、画面が切り替わった後現在の状態に戻すには?印刷は?等々楽しいですね!コントロ-ルの件は一度中断して今度はツリ-コントロ-ルに付いて説明して行こうと思います、この後のリストコントロ-ルは工夫して勉強して下さい。しかし又私がこの後に説明して行きますか!個人でそれまで独習しておいてください。