Visual Basic 6.0 実践講義 |
Visual Basic 中学校 > 雑記 >
1.選択したファイルを開く
実践講座では他のページで解説したことを組み合わせて実際に動作する機能・プログラムを作成します。そのためこの講座では手順や設定方法を順番にならべてあるだけで詳しい解説はありません。詳しい解説が必要な場合は別の講座をご覧ください。
ここで解説しているプログラムはここからダウンロードできます。
J1_exe.lzh 1.85KB
■テーマ
ユーザーにファイルを選択させて、選択したファイルをプログラムで処理する方法を示す。
■今回作成するプログラムの機能
・「ファイルを開く」ダイアログボックスを表示してユーザーが自由にファイルを選択できる。
・選択されたファイルがmp3の場合演奏する。
・選択されたファイルがテキストの場合表示する。
■完成図
■プログラム前の下準備
具体的なプログラムやデザインを開始する前にプロジェクトにコモンダイアログを追加する必要があります。
プロジェクトにコモンダイアログを追加するには[プロジェクト]メニューの[コンポーネント]をクリックして表示される一覧の中でMicrosoft Common Dialog Control 6.0にチェックをつけます。
なお、末尾の「6.0」はコモンダイアログのバージョンです。VB5の場合には「5.0」となっています。
■フォームのデザイン
画像のようにコントロールを配置して以下のようにプロパティを設定してください。
コントロール | プロパティ | 値 |
1.メニュー | (※メニューのついてはすぐ後の説明を読んだください) | |
2.ラベル | Name | Label1 |
BackColor | (黒) | |
Caption | (空にする) | |
ForeColor | (明るい緑) | |
3.コモンダイアログ | Name | CommonDialog1 |
フォーム | Name | frmMain |
BorderStyle | 3 - 固定ダイアログ | |
Caption | 選択したファイルを開く | |
Height | 1395 | |
Width | 4770 |
■メニュー
メニューはメニューエディタを使って設定します。
メニューについては初級講座 第21回 メニューで解説しています。
設定が完了した画面は次のようになります。
各メニューの詳細な設定は以下のようにしてください。
コントロール | プロパティ | 値 |
メニュー | キャプション | ファイル(&F) |
名前 | mnuFile | |
メニュー | キャプション | 開く(&O)... |
名前 | mnuOpen | |
ショートカット | Ctrl+O | |
(このメニューはmnuFileのサブメニューにしてください) |
■コード
このプログラムの全コードは次のようになります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
Option
Explicit Private Sub Form_Load() End Sub Private Sub mnuOpen_Click() Dim FileName As String Dim Player As Object CommonDialog1.Filter = "mp3|*.mp3|テキストファイル|*.txt|すべてのファイル|*.*" CommonDialog1.ShowOpen() FileName = CommonDialog1.FileName Label1.Caption = FileName '取得したファイルに対してどんな処理をするかここに書く。 'ここでは例としてmp3なら演奏、テキストなら表示をする。 Select Case StrConv(Right(FileName, 3), vbUpperCase)Case "MP3" Case "TXT" Case Else End Select End Sub |
3行目でフォームいっぱいにLabel1が広がるようにしています。
8行目でコモンダイアログのフィルターを設定しています。9行目でコモンダイアログを表示します。
10行目でユーザーが選択したファイル名を取得します。コモンダイアログは選択したファイル名を渡してくれるだけでファイルを開いてくれたりはしないのでこのファイル名をもとに自分で処理を書く必要があります。
14行目以下がユーザーが選択したファイルを開く処理ですが今回はこれはテーマではないし、ファイルの種類によって処理がまったく違うものになるので適当に書いています。適当と入っても私の環境ではきちんと動いています。しかし他のどの環境でも動くかどうかは保障できません。
14行目はファイル名から拡張子3文字をとりだして大文字にしています。
16行目、17行目でmp3を再生しています。
19行目は少しずるをやっています。ウィンドウズフォルダにほぼ必ず入っている「メモ帳」(ファイル名Notepad.exe)を呼び出してユーザーが選択したテキストを開かせています。