■ Visual Basic .NET を使う

  • Visual Studio .NET をインストールして使う

Visual Basic .NET を使うと、はじめは Visual Basic 6.0 との違いに驚くはずです。フォームにコントロールを貼り付けるとそれによってコードが生成されたり、フォームに Class というキーワードが付いていたり、そもそも、VB フォームではなく Windows フォームになっていたり。

そして、さらに使っていくと、実はそんなに変わってはいないことにも気づくでしょう。

たとえば、「ボタンをクリックすると、メッセージが表示される」アプリケーションを作成するためのプロセスは、Visual Basic 6.0 も Visual Basic .NET もまったく同じです。

  • プロジェクトを作成する (図 1)
  • フォームにコントロールを貼り付ける (図 2)
  • コントロールをダブルクリックし、イベントプロシージャに「メッセージを表示する」コードを追加する (図 3)
  • [開始]ボタンでテスト実行する (図 4)

図 1:プロジェクトの作成
図 1:プロジェクトの作成

図 2:コントロールを貼り付ける
図 2:コントロールを貼り付ける

図 3:コードを追加
図 3:コードを追加

図 4:テスト実行結果
図 4:テスト実行結果

このとき、メッセージを表示するための MsgBox 関数も Visual Basic 6.0 と同様に利用することができます ( Visual Basic .NET では、戻り値を利用するかしないかにかかわらず、引数を囲む“ (”と“) ”が必要です) 。

                  
MsgBox("Hello World!")

さらに、Visual Basic .NET では、 .NET Framework クラスライブラリを利用することもできます (PlusOne参照) 。

                  
MessageBox.Show("Hello World!")

とにかく Visual Basic .NET を使ってみてください

幸い、Visual Basic .NET は Visual Basic 6.0 と共存可能です。今、Visual Basic 6.0 の開発環境を利用していても、同じマシンで Visual Basic .NET を利用することができます。

Visual Basic .NET を利用するためには、 Visual Studio .NET をインストールします。 .NET Framework SDK だけをインストールしてもコンパイルや実行はできますが、ウィザードやデザイナ、デバッガなどのVisualな開発環境を利用したければ、Visual Studio .NET をインストールします。

セットアップを開始すると、まず Windows のアップグレードが行なわれ、続いて Visual Studio .NET がインストールされます。

たしかに、Visual Basic 6.0 から Visual Basic .NET への変更は小さなものではありません。しかし、それを Visual Studio .NET やそれが提供するツールがカバーし、移行をサポートしてくれます。Visual Basic .NET の新機能を正しく理解し、準備することで、Visual Basic 6.0 ユーザーにとって Visual Basic .NET による開発は思ったほど大きなハードルではなくなるでしょう。

本書では、

  • なぜ Visual Basic .NET への移行が必要なのか
  • どのような点が変わるのか
  • その準備のために今何ができるのか

について解説します。ぜひ、Visual Basic .NET を実際に使いながら読み進めていくことをお勧めします。

トレーナーをやっている関係で、よく 「Visual Basic ってかなり変わっちゃうんですよねー」 とか 「やっぱり、これからは C# ですか?」 といった声を耳にします。いつも次のようにお答えします。「思ったほどは変わっていませんよ。それより、すごい進化しているんでぜひ Visual Basic .NET を触ってみてください。多分、気に入ってもらえると思いますよ」 と。

Dd297681.plus(ja-jp,MSDN.10).gif
Dd297681.plus(ja-jp,MSDN.10).gif
Dd297681.plus(ja-jp,MSDN.10).gif

MsgBox と MessageBox.Show を比較する

MsgBox 関数を利用しても、MessageBox.Show メソッドを利用してもメッセージボックスを表示することができます。図 5 のふたつのコードの実行結果を比較してみてください。

                    
MsgBox("HelloWorld!",MsgBoxStyle.OKCancel, "Message")

Dd297681.chap1_fig05(ja-jp,MSDN.10).gif

                    
MessageBox.Show("HelloWorld!","Message",MessageBoxButtons.OKCancel)

Dd297681.chap1_fig05(ja-jp,MSDN.10).gif

図5:同じメッセージボックスが表示される

同じメッセージボックスが表示されます。実際に MsgBox 関数は、内部で MessageBox.Show メソッドを呼び出しています。

また、次のコードの実行結果を比較してみて下さい。

                    
MsgBox("Hello World!")
MessageBox.Show("Hello World!")

タイトルバーに注目してください。 MsgBox 関数では、第 3 引数を省略したときプロジェクト名が表示されます (図 6 の左) 。これは Visual Basic 6.0 の MsgBox 関数と同じです。MsgBox 関数では、引数が省略された場合にプロジェクト名を参照するコードが実行されます。これは便利ともいえますが、その分冗長なコードが動いているともいえます。

MsgBox("Hello World!")の実行結果 (左)      MessageBox.Show("Hello World!") の実行結果 (右)

図 6:MsgBox("Hello World!") の実行結果 (左) とMessageBox.Show("Hello World!") の実行結果 (右)