連載:VS 2005でいってみようDBプログラミング

第1回 Visual Studio 2005でいってみよう

山田 祥寛(http://www.wings.msn.to/
2006/03/01
Page1 Page2 Page3 Page4

■アプリケーションの挙動を記述する

 さて、これで画面の設計は完了です。次に、アプリケーションの挙動をコーディングしてみましょう。

 先ほど述べたように、.NETアプリケーションのプログラミング・モデルはイベントドリブンです。ここでは「ボタンがクリックされた」というClickイベントが発生したタイミングで、Labelコントロールに「こんにちは、<入力値>さん!!」という文字列を表示してみましょう。

 フォーム・デザイナ上でButtonコントロールをダブルクリックすると、プログラムを記述するための「コード・エディタ」が開きます。デフォルトで、ButtonコントロールのClickイベントに対応するコード(イベント・ハンドラの骨格)が自動生成されているはずです([コラム]参照)。自動生成されるイベント・ハンドラの名前は「コントロールID+イベント名」のようになります。この中に、ボタンをクリックしたタイミングで実行する処理を記述します。

 ここでは、リスト1のようなコードを追記してみることにしましょう。これで、テキストボックスに入力されたテキストに応じて、Labelコントロール(lblMessage)に「こんにちは、<入力値>さん!!」という文字列がセットされるわけです。

Protected Sub btnClick_Click(ByVal sender As Object, _
  ByVal e As System.EventArgs)
  lblMessage.Text = "こんにちは、" & txtMessage.Text & "さん!!"
End Sub
リスト1 ボタンクリック時に実行されるイベント・ハンドラ(VB)
太字がコード・エディタで入力する行。これ以外の部分はVS 2005により自動生成される。

 ちなみに、VS 2005では「IntelliSense(インテリセンス)」と呼ばれる入力支援機能が搭載されています。

 例えば本稿の例ならば、「lblMessage.」と入力したタイミングで、図11のようにLabelコントロールで利用可能なプロパティ/メソッド(メンバ)がリストアップされます。あとは、この入力候補の中から使用したいメンバを選択すればよいわけです。


図11 VS 2005のIntelliSense機能
「lblMessage.」と入力したタイミングで、Labelコントロールで利用可能なプロパティ/メソッド(メンバ)が入力候補としてリストアップされる。

 IntelliSenseを利用することで、タイプミスを減らせるだけでなく、開発者はいちいちヘルプ・ドキュメントを参照する必要がなくなりますので、より効率的にコーディングを行うことができます。

[コラム]イベント・ハンドラの作成

 VS 2005は、配置したコントロールのダブルクリックで、そのコントロールで最もよく使われるイベントに対応するイベント・ハンドラを自動生成します。もしもデフォルトで生成されるものとは異なるイベント・ハンドラを生成したい場合には、コード・エディタ上部の選択ボックスから対象のコントロール(ID値)とイベントを選択してください。

 例えば図12のように選択することで、btnClick_Commandという名前のイベント・ハンドラ(の骨格)が自動生成されます(VBの場合。C#では[プロパティ]ウィンドウでイベント・ハンドラを追加可能)。


図12 Commandイベントのイベント・ハンドラの追加
左側のリストからコントロールを選択し、右側のリストからイベントを選択することにより、そのイベントのイベント・ハンドラが自動生成される。

■実行結果を確認してみよう

 さあ、一通りの作業が完了したところで、最後に実行結果を確認してみましょう。

 VS 2005のメニューから[デバッグ]−[デバッグ開始]を選択することで、ASP.NET開発サーバとブラウザが自動起動します。初期状態では、画面上にテキストボックスと[クリック!!]ボタンが表示されているはずですので、適当な文字を入力して、ボタンをクリックしてみましょう。

 テキストボックスの下部にメッセージが表示されれば成功です(図13)。



「山田」と入力してボタンをクリック


図13 作成したアプリケーションの実行結果

 ちなみに、VS 2005ではデバッグ機能が充実しているのも特徴です。

 例えば、コード・エディタ上でブレイクポイント(図14の左端の茶色の丸印)を設定することで、実行途中で処理を中断し、その時点での変数の値を確認することもできますし(次の[コラム]参照)、「ステップ実行」を利用することで1行ごとに結果を確認しつつ、コードを実行することもできます。


図14 ブレイクポイントの設定
左端の茶色の丸印がブレイクポイントを示している。ブレイクポイントがあるとプログラムの実行はその個所で中断されるため、その時点での変数の内容などを確認できる。

[コラム]データヒント&ビジュアライザ

 デバッグ中にマウス・ポインタを変数上に移動させ、変数の内容を確認する機能のことを「データヒント」といいます。データヒントを利用することで、伝統的な「クィック・ウォッチ機能」を利用するのに比べ、変数の内容を確認するのが格段に容易になります。

 ただし、VS.NET 2003のデータヒント機能は数値や文字列などに対してしか有効ではありませんでした(クラスのインスタンスに対してはオブジェクト名が表示されるだけで、事実上意味がありません)。しかし、VS 2005ではオブジェクトに含まれるメンバの情報を表示しますので、より使い勝手が向上しています。

 また、VS 2005では「ビジュアライザ」という機能も搭載されています。ビジュアライザを利用することで、変数が格納している長いテキストやHTML、XMLデータをデータの種類に応じて、別ダイアログで表示することが可能になりました。ポップアップ・ウィンドウだけでは確認しにくかったデータ内容も、ビジュアライザを利用することでより視認しやすくなります。

まとめ

 以上、今回は.NET Frameworkの仕組みとVS 2005によるアプリケーション開発の基本的な流れについて紹介しました。

 もちろん、本稿で紹介したのは、.NETアプリケーション開発のごくごく基本であるにすぎません。.NET Framework/VS 2005にはまだまだ便利な機能が盛りだくさんですので、次回以降で徐々に紹介していきたいと思います。

 次回からは、いよいよ連載タイトルにもあるように「データベース」を利用したアプリケーション開発に移っていく予定です。どうぞお楽しみに。End of Article


 INDEX
  Visual Studio 2005でいってみようDBプログラミング
  第1回 Visual Studio 2005でいってみよう
    1..NET Frameworkとは?
    2.Visual Studio 2005の基本を理解しよう
    3.VS 2005でアプリケーションを開発しよう(1)
  4.VS 2005でアプリケーションを開発しよう(2)
 
インデックス・ページヘ  「Visual Studio 2005でいってみようDBプログラミング」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間