第二回 コントロールとコードの組み込み

今月は、前回作成したフォームに、ユーザーが操作するための機能を組み込みます。
Visual Basic.NETには、「コントロール」と呼ばれる部品が用意されています。これらの部品は、Windowsやアプリケーションでおなじみのボタンやリストボックス、チェックボックスなどが揃っています。
ユーザーとの対話機能やデータの表示などは、このコントロールの中から自分が組み込みたい機能にあったコントロールを選んでフォームに配置します。
ただし、コントロールは組み込んだだけでは動作しません。必ず、処理を実行するためのコードを書いてあげないといけません。
そこで、今月はフォームにコントロールを組み込んで、ユーザーの操作を受け付けるようにし、そのための処理をコードで組み込む作業を行います。


1. プログラムの内容を決めておく
このプログラムは、ユーザーが血液型を選んでボタンを押すと、今日の占いを表示するようにします。そこで、プログラムの動作を次のように整理してみました。

①血液型をリスト表示し、ユーザーがマウスで選べるようにする
②占うかどうかは、ボタンを押して決めてもらう
③占いの内容はあらかじめ何項目か作成しておき、コンピュータによってランダムに選択し表示する

この動作内容に沿って、コントロールの配置やコードの設計を考えてゆきます。

1) コントロールの選択
では、プログラムの動作に見合ったコントロールを選びましょう。

①血液型のリスト表示
まず血液型のリスト表示ですが、これは2つのコントロールが候補に上ります。1つはListBox（リストボックス）コントロールで、もう1つはComboBoxコントロールをドロップダウンリストボックスとして使う方法です。
コントロールの名前だけ聞くと「何それ？」とお思いでしょうが、この2つのコントロールはWindowsやアプリケーションでずいぶん使われている定番コントロールです。
ListBoxコントロールは、データをリスト状に一覧表示し、その中から1つだけユーザーに選んでもらうコントロールです。
ComboBoxコントロールのドロップダウンリストボックスも、ListBoxコントロールと同様選択候補を一覧表示し、その中からユーザーに1つ選んでもらうコントロールですが、ListBoxコントロールと違い通常リストの一覧はたたまれており、コントロールの▼ボタンを押すと候補一覧がドロップダウンして表示されるようになっています。
ListBoxコントロールは、候補一覧が一目でわかりますが、その分フォーム内のスペースをとってしまいます。ドロップダウンリストボックスは、▼ボタンを押さないと候補一覧を見ることができませんが、その分フォーム内の消費スペースが少なくてすみます。どちらを使うかはフォームのデザインで決めていただいてかまいません。
今回は、ComboBoxコントロールのドロップダウンリスト機能を使って、血液型一覧を表示し、ユーザーに選択してもらうことにします。
あわせて、ComboBoxコントロールの周りに枠を付けて、血液型を選ぶところであることを強調するようにデザインします。これは、「GroupBox」というコントロールを使用します。GroupBoxコントロールは、複数のコントロールを1つにまとめてグループ化する機能を持ったコントロールですが、フォーム内を枠で仕切りコントロールを整理して表示するために使うこともできます。


●画面（image- 1）
データをリスト状に一覧表示するリストボックス

●画面（image- 2）
▼ボタンを押すとリストが表示されるドロップダウンリストボックス


②占いを実行するかどうか
これは、ユーザーにボタンを押してもらうことにします。コントロールでは、Buttonコントロールを使います。このコントロールも、Windowsやアプリケーションですっかりおなじみですね。というか、このコントロールなしではプログラムは成り立たないといっても過言ではない、必須のコントロールと言えます。
ユーザーに決めてもらう内容をボタンの表面に文字やアイコンで表示し、ボタンを押すことで意思決定してもらうコントロールです。

③占いの内容を表示する
占いの内容をフォームに表示するには、Labelコントロールを使用します。このコントロールも、Windowsやアプリケーションのあらゆる場面で使われているコントロールです。
ユーザーからの操作を受け付けるというよりも、主にデータやメッセージなどの文字を表示するのに使用されるコントロールです。


2) コントロールの配置
では、選んだコントロールをフォームに配置して行きましょう。コントロールのデザインも、プロパティを使用して色や表示文字、形状の設定を行っていきます。
コントロールは、「ツールボックス」に収められています。ツールボックスには、Visual Basic.NETで使用できるいろいろなコントロールが並んでおり、プログラマは使いたいコントロールを選んでフォームに並べてゆきます。

①Visual Basic.NETの左端にあるツールボックスアイコンをクリックします。
ツールボックスが開き、コントロールにアクセスできるようになります。

