Webエディタの作成 VB6
前へ 目次へ 次へ 

ウェブエディタの作成 V

ファイルの選択

 ウィンドウの左側に配置したテキスト(txtFilename)、ドライブ(Drive1)、ディレクトリ(Dir1)、ファイル(File1)、コンボ(Combo1)の各オブジェクトを連携させて、ファイルを選択できるようにプログラムする。


ドライブとディレクトリ(フォルダ)の連携

 ドライブ(Drive1)オブジェクトでドライブを選択すると、それに応じてディレクトリ(Dir1)オブジェクトの内容が変わるようにする。

 ドライブオブジェクトが変更されるとChangeイベントが発生し、Drive1_Changeプロシージャが呼び出される。変更された内容(値)はDriveプロパティで参照することができる。
 ディレクトリオブジェクトはPathプロパティに設定した値にしたがって表示する内容(フォルダ)が変わるので、このプロパティにDriveプロパティの値を設定する。

・プログラムリスト

Private Sub Drive1_Change()
    'ドライブ名が変更されたら、ドライブ名をDir1.Pathに設定
    Dir1.Path = Drive1.Drive
End Sub

 処理はDrive1のDriveプロパティの値をDir1のPathプロパティに代入するだけである。実行してドライブを変更すると変更したドライブのフォルダがDir1オブジェクトに表示される。


ディレクトリとファイルの連携

 ディレクトリ(Dir1)オブジェクトでフォルダを選択すると、それに応じてファイル(File1)オブジェクトの内容が変わるようにする。

 ディレクトリオブジェクトが変更されるとChangeイベントが発生し、Dir1_Changeプロシージャが呼び出される。変更された内容(値)はPathプロパティで参照することができる。
 ファイルオブジェクトはPathプロパティに設定した値にしたがって表示する内容(ファイル)が変わる。

・プログラムリスト

Private Sub Dir1_Change()
    'フォルダ名が変更されたら、フォルダ名をFile1.Pathに設定
    File1.Path = Dir1.Path
End Sub

 処理はDir1のPathプロパティの値をFile1のPathプロパティに代入するだけである。実行してフォルダを変更すると変更したフォルダ内のファイルがFile1オブジェクトに表示される。


ファイルとテキストボックスの連携

 ファイル(File1)オブジェクトでファイルを選択(ダブルクリック)すると、そのファイル名がテキスト(txtFilename)オブジェクトに表示されるようにする。

 ファイルオブジェクトのファイルをダブルクリックするとDblClickイベントが発生し、File1_DblClickプロシージャが呼び出される。選択された内容(ファイル名)はFileNameプロパティで参照することができる。

・プログラムリスト

Private Sub File1_DblClick()
    'ファイル名をダブルクリックしたら、ファイル名をtxtFilenameに設定
    txtFileName.Text = File1.FileName
End Sub

 処理はFile1のFileNameプロパティの値をtxtFilenameのTextプロパティに代入するだけである。実行してファイルをダブルクリックすると選択したファイル名がtxtFilenameオブジェクトに表示される。


ファイルとコンボボックスの連携

 編集の対象となるファイルはHTMLファイルである。HTMLファイルは拡張子が"html"または"htm"という約束があるので、ファイル(File1)オブジェクトに表示させるファイルも拡張子が"html"または"htm"のものだけを表示するようにしたい。
 ファイル(File1)オブジェクトのPatternプロパティにファイルを特定する文字列(パターン)を設定することができる。*や?のワイルドカードとセミコロン(;)が使える。セミコロンはパターンの区切りとして使用する。ここでは、拡張子が"html"または"htm"のものだけを表示したいので "*.htm;*.html" という文字列を設定する。

 コンボボックスコントロールは、テキストボックス (TextBox) コントロールとリストボックス (ListBox) コントロールの機能を組み合わせたもので、テキストボックス部分に文字列を直接入力する方法と、リスト部分から項目を選択する方法のどちらでも入力できる。リストに文字列を設定するには、AddItemメソッドを使用する。ここに、ファイルのパターンを設定することにする。設定するパターンは、"*.htm;*.html"、"*.css"と"*.*"の三つとする。"css"はCascading Style Sheetの略でホームページのスタイルを統一するための書式などが書かれたスタイルシートのファイルである。"*.*"はすべてのファイルという意味である。
 まずは、コンボのリストやファイルのパターンの初期設定をForm_Loadプロシージャにプログラムする。

・プログラムリスト

Private Sub Form_Load()
    ChDrive App.Path    'カレントドライブをプログラムと同じドライブにする
    ChDir App.Path      'カレントフォルダをプログラムと同じフォルダにする
    'ファイルタイプ設定・種類
    Combo1.Text = "*.htm;*.html"    '初期値の設定
    Combo1.AddItem Combo1.Text     'リストにデータを追加
    Combo1.AddItem "*.css"          'リストにデータを追加
    Combo1.AddItem "*.*"            'リストにデータを追加
    File1.Pattern = Combo1.Text    'パターンの設定
End Sub

 コンボのリストからマウスでパターンを選択したときは、コンボオブジェクトのClickイベントが発生し、Combo1_Clickプロシージャが呼び出される。また、キーボードからパターンを入力したときはコンボオブジェクトのKeyイベントが発生する。ここでは、Combo1_KeyPressプロシージャにプログラムする。

・プログラムリスト

Private Sub Combo1_Click()
    'ファイルパターンを設定
    File1.Pattern = Combo1.Text
End Sub

Private Sub Combo1_KeyPress(KeyAscii As Integer)
    'ファイルパターンを設定
    If KeyAscii = vbKeyReturn Then
        File1.Pattern = Combo1.Text
    End If
End Sub

 Combo1_Clickプロシージャでは、選択されたコンボの内容をファイルのPatternプロパティに代入するだけである。Combo1_KeyPressプロシージャでは、リターン(エンター)キー(vbKeyReturn)が押されたときだけ、コンボの内容をファイルのPatternプロパティに代入している。

 実行して、コンボの内容(パターン)を変更してみよう。パターンに応じたファイルが表示される。


前へ 目次へ 次へ 
Copyright © 2001 Hiroshi Masuda 

 

 

inserted by FC2 system