VB2010の概要

今回の授業で使用するプログミング言語はVisual Basic 2010という。 Visual Basic 2010はGUI(グラフィカル・ユーザ・インターフェイス=画面上に絵やアイコン(絵文字)を表示し、直感的でわかりやすく操作できるようにしたユーザインターフェイスのこと)を特徴とした、初心者でも習得しやすいプログラム言語である。しかし、実際には度重なるバージョンアップ、互換性のなさ、OSの変遷などがあり、使いこなすのは難しいものとなっている。昨年の授業ではVisual BASIC .Netというバージョンを使用していたため、HP上の解説、画面などが異なる場合があるので注意が必要である。

今回は、とにかくVB2010でアプリケーションを一つ作ってみる。
今回作成するVB2010アプリケーションは、「自己紹介をする」アプリケーションである。
「テキストボックス」と呼ばれる領域にユーザーが自分の名前を入力し、「コマンドボタン」を押すと 入力した名前を使った自己紹介文を「ラベル」に表示されるという、 きわめて単純なアプリケーションである。


VB2010の起動

(1)OS画面の「スタート」から「すべてのプログラム」を選び、「Microsoft Visual 2010Studio .NET」を起動する。



(2)VB2010が起動され、次のような画面になる。
環境により、画面が異なる場合がある。

Recent Projectというウィンドウがあるので、新しいプログラムを作成するときには「Create」を選ぶ。
(プログラム作成を継続するときなどは、「Open」を選ぶことになる。)

(3)次の画面になるので、作成するプロジェクトの種類とその名前を入力する。

「Project types」「Visual Basic」「Windows」「Templaates」「Windows Forms Appplication」を指定し、 「Name」は、作成するプロジェクトの名前を指定する。
プロジェクト名には全角文字(日本語など)をもちいないこと。 環境により、警告文が出る場合があるが、無視してよい。 これで、VB2010の起動が完了した。


中央に現れているのが「Form Designer」であり、この周囲をさまざまなウィンドウが取り巻いている構成になっている。当面、必要なのは「Form Designerウィンドウ」「Toolboxウィンドウ」「Propertiesウィンドウ」である。

「Propertiesウィンドウ」が表示されていない場合にはF4キーを、「Toolboxウィンドウ」が表示されていないときはCTRL+ALT+Xキーを押すと表示される。

VB2010では、さまざまな機能をウィンドウ形式で提供している。また、その表示形式をユーザーで自由に設定したり、ウィンドウを自由に配置できるようになっている。このため、慣れると自分のベストの状態に機能を配置することができるが、とにかく説明が難しい。

これ以外のウィンドウは当面使用しないので、閉じてしまってもよい。


VB2010によるアプリケーション作成工程

Visual Basic 2010の作成は次の3工程で行われる。

  1. コントロールの配置
    ユーザインターフェイスに必要なコントロールをフォーム上に配置していく。
  2. プロパティの設定
    コントロールのプロパティを設定して、外見や機能を整える。
  3. イベントコードの記述
    コントロールを操作したときにしなくてはならない「仕事」をプログラミングしていく。

これらの工程のうち、1、2、は「アプリケーションの外見を作っていく」工程であり、簡単でわかりやすい。工程3は「アプリケーションに実際の機能を付加する」工程で、本来の意味でのプログラミングである。 これらの過程を実際にVB2010アプリケーションを作成しながら学んでいくことにする。


1.コントロールの配置

● 必要なコントロール

ここで今回使用するコントロールの説明をしておく。 繰り返しになるが、このVBアプリケーションは次のようなユーザーインターフェイスを持つ。

ここで必要なのは、以下のコントロールである。

Label 「文字や数を表示するもの」
通常、演算結果などを表示する。
Button 「押すことができるもの」
クリック等により「イベント」を発生させる。
TextBox 「文字や数を入力できるもの」
通常、入力するために用いられる。

● フォーム上へのコントロールの配置

 ボタン、ラベル、テキストボックスをフォーム上に配置する。 次の方法がある。

体で覚えること。

最終的に、フォーム上に次のように配置する。

フォーム上に、上から順に「ラベル」、「ボタン」、「テキストボックス」を貼り付け、大きさと位置を調整した。


2.プロパティの変更

● コントロールの名前の変更

 プロパティとは、フォーム上に配置されたコントロールの細かな「属性」を 定めるものである。プロパティを設定することにより、 コントロールの外見、大きさ、機能などを細かく調整することができる。 フォーム上に配置されたコントロールのプロパティを変えるには,対象となるコントロールを マウスでクリックしてから、「プロパティウィンドウ」でプロパティを設定する。 ここでは、フォーム上に配置されたコントロールのいくつかのプロパティを変更する。

 特に重要なのがコントロールの”名前”である。 コントロールは、配置したときに自動的に「名前」がつけられている。 例えば、最初に配置したテキストボックスには[TextBox1]という名前が自動的に付けられる。 これはこのままでもよいのであるが、後でわかりにくくなるので、名前を変更しておく。 このためには、プロパティウィンドウで”(Name)”プロパティを変更する。

ラベルには、lblAnswerのようにlblから始まる名前を付けることにする。 (必ずしも従う必要はない)
ただし、コントロール名には全角文字(日本語など)をもちいないこと。

同じように、ボタンにはbtn、テキストボックスにはtxtで始まる名前を付けることにする。

ここでは、ラベル、コマンドボタン、テキストボックスの名前をそれぞれ lblAnswerbtnPresenttxtNameと変更する。

● その他プロパティの変更

この他に、次のような変更をおこなう。

まとめると、以下のようになる。

コントロールプロパティ
フォーム Text
フォーム左上に表示されるウィンドウ名
自己紹介
ラベル (Name)
名前
lblAnswer
Text
最初に表示されている文字列
""(空白)
AutoSize
表示される文字列によりサイズが自動的に変わるか
FALSE
BackColor
テキストボックスの背景色
(白)
ボタン (Name)
名前
btnPresent
Text
ボタン上の文字列
名前を入れて、ボタンを押してください
テキストボックス (Name)
名前
txtName
Text
最初に入力されている文字列
""(空白)
BackColor
テキストボックスの背景色
(白)

● ユーザーインターフェイスの完成

これで、VB.Netアプリケーションのユーザーインターフェイスのみは完成することができた。
現段階では、目的とするVB.Netアプリケーションのうち、ユーザーインターフェイスのみを作成したことになる。 なんの機能もまだ備わっていないが,これでもVB.Netアプリケーションとして実行することができる。 試しに、実行してみる。

メニューバーの「Debug」から「Start Debugging」を選択する。(「F5]キーを押してもよい。)

ちゃんとウィンドウが現れ、VB2010アプリケーションとして実行できた。

テキストボックスに数字を入力することができるし、コマンドボタンを押すことも出来る。 ただ、それ以外の機能は何も備わっていない。いわば見せ掛けだけのアプリケーションである。

終了させるには、メニューバーの「Debug」から「Stop Debugging」を選択する。(Shift+F5キーを押してもよい。)


3.プログラミング

● VB2010におけるプログラミングはイベント駆動型

実際に「入力した名前を使って自己紹介文を表示する」ためには、プログラミングが必要となる。

VB2010では「イベントドリブン」(イベント駆動型)プログラミングと呼ばれる 技法により、プログラムを記述していく。 イベント(事象)とは、ユーザーがボタンを押したり、 メニューから何かを選択したり、 あるいはキーボードのキーを押したときに発生する事象である。

簡単に言えば,VB2010アプリケーションは、 ある特定の「イベント」が発生したときに、 「どうしたいか」を記述することによりプログラミング していくわけである。 このプログラムコードは、「コードウィンドウ」に入力する。

今回の場合は、以下のプログラミングとなる。
 
・ユーザーがボタンbtnPresentを押したときに
  テキストボックス txtNameに入力されている文字列を持ってきて
  それを使用した自己紹介文をラベルlblAnswerに表示する。

● コードウィンドウへのプログラム入力

ボタンbtnPresent をダブルクリックすると、「コードウィンドウ」が表示される。

このコードウィンドウのHandles btnPresent.Clickで終わる場所(通常カーソルが位置する場所)に、次のコードを入力する。

lblAnswer.Text = "私は" & txtName.Text & "です。"

ここで、btnPresent.Clickは、「コントロールbtnPresentがクリックされたときに発生するイベント」に対応している。
ここで、 txtName.Textは、テキストボックスtxtNameTextプロパティ、すなわち 「テキストボックスに入力されている文字列」を意味する。 またlblAnswer.TextはラベルlblAnswerTextプロパティ、すなわち 「ラベルに表示される文字列」を意味する。

lblAnswer.Text = "私は" & txtName.Text & "です。"

とは、「文字列「私は」とtxtNameの内容、文字列「です。」を連結し、それをlblAnswerの Textプロパティに設定せよ」 を意味する。

● 最終実行

テキストボックスに名前をいれ、ボタンをおすと自己紹介文がラベルに表示される。

● セーブ

終了するには、「File」から「Save all」を選択する。

すると「Save Project」ウィンドウが表示されるので、「Name」欄(プロジェクト名)、「Location」欄(プロジェクトの保存先ディレクトリ)に注意して保存する。

作成中のVB2010アプリケーションは、通常複数のファイルやディレクトリから構成されている。ファイルやディレクトリ構成が崩れると、アプリケーション全体が動作しなくなる可能性が多いのでむやみに保存場所のファイルをいじらないほうがよい。

上記画面の中の「Location」の場所は変更しないこと。 自分のフォルダ内に、Locationで示されたフォルダが作成され、その中にNameで指定されたサブフォルダが作成される。
Nameは変更してもよいが、課題を提出するときは、Locationで指定したフォルダにおいて、Nameで指定したサブフォルダをフォルダごと圧縮すること。

このアプリケーションの圧縮・そのメールにての提出には毎回うまくいかないことが多いので、何回も練習して「コツ」を覚えること。

課題1

テキストボックスを一つ追加して、以下のような動作をするVB2010アプリケーションを作成せよ。
プロジェクト名はkadai01とすること。

名前と出身地を入力してボタンを押すと 「私はXXX出身のOOOのです。」と表示される。 ボタンやラベル、テキストボックスのプロパティを変えて、なるべく派手にすること。

例えば、次のプロパティを変更する。
BackColorコントロールの色
Fontコントロール上の文字のフォント・スタイル・大きさ
ForeColorコントロール上の文字(など)の色