ツリー(ツリービュー) その2

 ━━━━━━━━━━━━━━━━━━━━━━━━━

※2012年7月17日 修正:

先日アップロードしたプログラムには欠陥があり、

正しく動作しない場合があることがわかりましたので、

修正したものをアップし直します。

━━━━━━━━━━━━━━━━━━━━━━━━━


今回は、前回で書いたとおり、フォルダだけでなく、ファイルの一覧も追加して、選択したファイルを開くプログラムを紹介します。なお、プログラムの説明は次回にします。


■プログラムの例


──────────────────────────────

「Produire.WinControl.dll」を利用する


ウィンドウ1を表示する

待機する


ウィンドウ1とは

ウィンドウを継承する


はじめの手順

初期化する

終わり


初期化する手順

ーーこの手順は自動生成されたものです。編集しないでください

この内部領域大きさを{245、364}に変える

この内容を「ウィンドウ1」に変える


ラベル1というラベルを作る

その内容を「フォルダ」に変える

その位置と大きさを{13、13、40、12}に変える


ツリー1というツリーを作る

その項目高さを14に変える

その位置と大きさを{13、29、219、278}に変える


選択ボタンというボタンを作る

その内容を「選択」に変える

その位置と大きさを{13、329、65、23}に変える


開くボタンというボタンを作る

その内容を「開く」に変える

その位置と大きさを{87、329、65、23}に変える


閉じるボタンというボタンを作る

その内容を「閉じる」に変える

その位置と大きさを{163、329、65、23}に変える


終わり


ーーフォルダの選択

選択ボタンがクリックされた時の手順

フォルダ選択画面を表示する

もしフォルダ選択画面のキャンセルなら、手順から抜ける

フォルダ名は、フォルダ選択画面のフォルダ名

ツリー1をクリアする

ツリー1を更新開始する

ツリー1に「[フォルダ名]」をフォルダ追加する

ツリー1を更新終了する

ツリー1にフォーカスする

終わり


ーーツリーにフォルダを追加する

[ノード]に、[パス]を、フォルダ追加する手順

【フォルダ名たち】

フォルダ名たちは、パスのフォルダの一覧

【フォルダ名】

【子ノード】

フォルダ名たちをフォルダ名にそれぞれ繰り返す

子ノードは、ノード:フォルダ名を「image\folder_close.ico」で追加したもの

子ノードに、パス&「\」&フォルダ名をフォルダ追加する

繰り返し終わり


【ファイル名たち】

ファイル名たちは、(パス&「\*.txt;*.doc」)のファイルの一覧

【ファイル名】

ファイル名たちをファイル名にそれぞれ繰り返す

ノード:ファイル名を「image\document.ico」で追加する

繰り返し終わり

終わり


ツリー1が折りたたみ後時の手順

イベントの対象のアイコンを「image\folder_close.ico」に変える

終わり


ツリー1が展開後時の手順

イベントの対象のアイコンを「image\folder_open.ico」に変える

終わり


ーーファイルを開く

開くボタンがクリックされた時の手順

判定は、[正規表現:ツリー1の選択内容から「.*\.txt」を取り出したもの]

もし、判定が「{}」でないなら

一覧は、[フルパスで「[フォルダ名]」のファイルの全一覧]

配列は、一覧から「[ツリー1の選択内容]」を探す

番号は、配列(1)

パス名は、一覧([番号])

ファイル名は、「"[パス名]"」

ファイル名を起動する

もし終わり

終わり


閉じるボタンがクリックされた時の手順

自分を閉じる

終わり


終わり

──────────────────────────────


コメント

このブログの人気の投稿

■アクセシブルな開発環境「日本語プログラミング言語・プロデル」の紹介

ドキュメント検索 と 掲示板

「キュー」と「スタック」 その2