Windows  ソフトを  作つくって  みよう!

1 目的もくてき・  ねらい

プログラミング  言語げんご  C#で、  シンプルな  GUI(Graphical User Interface)  アプリケーションを  作つくる  ことで、  Windows  アプリケーション  開発かいはっの  最初さいしょの  一歩いっぽを  踏ふみ出だします。  GUIを  シンプルに  書かける  C#の  長所ちょうしょを  生いかして、  難むずかしい  ことは  置おいて  おいて、  まず  プログラミングの  楽たのしさ、  そして  気き軽がるに  作つくれる  ものだと  感かんじて  もらう  ことが  第一だいいちの  ねらいです。

  

2 実施じっし  内容ないようの  概要がいよう

Windows  (Vista  以降いこう)に  最初さいしょから  入はいって  いる  C#  開発かいはっ  環境かんきょうを  使つかって、  簡単かんたんな  フォーム  ベースの  アプリケーションを  作成さくせい  します。  GUIですので、  フォームの  サイズは  どうか、  ボタンの  配置はいちは  どうか、  と  いった  外観がいかんの  チェックなども  必要ひつように  なります。  DotViewなどを  使つかって  自分じぶんで  確認かくにん  する  ことも  出来できますが、  複雑ふくざつな  ものを  作つくりませんので、  口頭こうとうで  伝つたえたり、  LEGOの様ような  ブロックなどを  使つかって  説明せつめい  する、と  いうも  アリです。

  

3 講師こうし用ようの  実施じっし  手順てじゅんの  詳細しょうさい

3-1 準備じゅんび  する  ことがら、  物品ぶっぴんなど

1. Windowsの  設定せっていで、  「拡張かくちょう子しを  表示ひょうじ  する」ように  する。

2. C#の  コンパイラ  (csc.exe)を  探さがします。

 - 通常つうじょう、  C:\Windows\Microsoft.NET\Framework\v(バージョン  番号ばんごう)に  あります。

 - 例たとえば、  C:\Windows\Microsoft.NET\Framework\v4.0.30319

3. Windowsの  設定せっていで、  環境かんきょう  変数へんすう  PATHに  上記じょうきの  場所ばしょを  追加ついか  します。

4. C#  プログラム  ファイルの  拡張かくちょう子し  .csを、  生徒せいとが  使つかう  エディタ  (「MYEDIT」  「メモ帳ちょう」など)で  開ひらくように  して  おきます。

5. Documents  フォルダなどの  下したに、  プログラムを  作成さくせい  する  フォルダを  MyFirstCSと  いった  名前なまえを  つけて  作成さくせい  して  おきます。

6. コマンド  プロンプトを  立たち上あげ  (Winキー+R → cmdと  入力にゅうりょく  → Enterキー)、  上記じょうきの  フォルダに  移動いどう  します。

 - コマンド  プロンプト  起き動どう: Winキー+R  →  cmdと  入力にゅうりょく  →  Enterキー

 - Documents  フォルダの  MyFirstCSに  移動いどう: コマンド  プロンプトで、  cd %userprofile%/Documents/MyFirstCSと  入力にゅうりょく  →  Enterキー

7. ダイアログの  外観がいかんを  確認かくにん  する  ために  DotView(DV-2)を  使つかう  場合ばあいは、  「プログラミングで  図形ずけいを  動うごかして  みよう!」の  設定せっていを  参考さんこうに  して  ください。

  

3-2 実施じっし  手順てじゅんの  詳細しょうさい

基本的きほんてきに、  1つの  項目こうもくに  対たいして  以下いかの  手順てじゅんで  進すすめます。

1. サンプル  プログラム  ○○○○.csを  開ひらかせます。

 - プログラムを  見みて  もらいます。

 - 長ながい  プログラムでは  ないので、  極きょく力りょく、  生徒せいとが  見み終おわるまで  待まって  ください。

2. 簡単かんたんに  どんな  プログラムか  (何なにが  起おこる  プログラムか)を  解説かいせつ  する。

3. サンプル  プログラム  ○○○○.csを  コンパイル  させる。

 - コマンド  プロンプトで、  csc ○○○○.cs

4. 出来できた  実行じっこう  ファイル  ○○○○.exeを  実行じっこう  して  確たしかめる。

 - コマンド  プロンプトで、  ○○○○.exe

5. プログラムの  詳くわしい  解説かいせつを  行おこなう。

6. プログラムの  変更へんこう  内容ないようを  示しめし、  プログラムの  変更へんこう・  コンパイル・  動作どうさ  確認かくにんを  させる。

 - コンパイルで  エラーが  でたら、  コンパイル  エラーを  確認かくにん  し、  一緒いっしょに  修正しゅうせい  作業さぎょうを  する。

7. 課題かだいを  出だして、  各自かくじ、  プログラムの  変更へんこう・  コンパイル・  動作どうさ  確認かくにんを  させる。

8. どんな  変更へんこうを  加くわえたか、  発表はっぴょう  して  もらい、  コメントを  する。

  

3-2-1 最初さいしょの  フォーム  作成さくせい

まず、  何なにも  ない  フォームを  表示ひょうじ  させる  プログラムから  始はじめます。

 

1. サンプル  プログラム  1.csを  開ひらき、  プログラムに  目めを  通とおさせて  ください。

 

    サンプルプログラム "1.cs"

     1: using System;

     2: using System.Windows.Forms;

     3:

     4: class Hello: Form

     5: {

     6:   public static void Main()

     7:   {

     8:     Hello hw = new Hello();

     9:     Application.Run(hw);

    10:   }

    11: }

 

2. 「これは  ただ、  空からっぽの、  何なんにも  無ない  フォーム  (ウインドウ)を  表示ひょうじ  させる  プログラムで  ある  こと、  これを  ベースに  これから  色いろ々いろと  いじって  アプリケーションを  作つくって  いく  こと」を  説明せつめい  して  ください。

3. この  プログラムを  コンパイル  し、  実行じっこう  ファイル  1.exeが  出来できる  ことを  確認かくにん  させて  ください。

・ コマンド  プロンプトで、  csc 1.cs

・ 「コンパイル」に  ついては、  簡単かんたんな  解説かいせつで  構かまいません。

 - 例たとえば、  「人間にんげんが  書かいた  プログラムを、  コンピューターが  分わかる  形かたちに  変換へんかん  (翻訳ほんやく)  する  作業さぎょう」など。

4. 出来できた  実行じっこう  ファイル  1.exeを  実行じっこう  して  確たしかめる。

・ コマンド  プロンプトで、  1.exe

・ 起き動どう時じに  フォーカスが  当あたって  いない  ことも  あるので、  それを  説明せつめい  し、  Altキー+Tabキーで  切きり替かえて、  起き動どう  した  フォームに  フォーカスを  当あてるように  して  ください。

・ 起き動どう時じに  コマンド  プロンプトが  立たち上あがります。  これは、  デバッグ用ようの  ための  ものです。

・ フォームを  確認かくにん  したら、  Altキー+Spaceキー  →  Cなどで  フォームを  閉とじさせて  ください。

 

1.exe

画像

  

 

 

5. プログラムの  詳くわしい  解説かいせつを  行おこないます。

・ 最初さいしょに  キッチリ  解説かいせつを  して  おくと、  後あと々あと  楽らくに  なると  思おもいますが、  生徒せいとに  よっては、  退屈たいくつ  して  しまうかも  しれません。

・ 生徒せいとの  食くいつき  具合ぐあいを  見みて、  適度てきどに  切きり上あげ、  後あとの  プログラム  解説かいせつで  分散ぶんさん  して  解説かいせつ  するのも  いいかも  しれません。

・ ここに  記しるして  いるのは、  説明せつめいの  一例いちれいですので、  生徒せいとの  レベルに  応おうじて  内容ないよう・  詳細しょうさいを  変かえて、  もちろん  構かまいません。

・ 1行目ぎょうめ    「この  プログラムで  Systemと  いう  部品ぶひん集しゅう  (便利べんり  機能きのうの  集あつまり)を  使つかいますよ。」と  言いった  意味いみ、  と  いう  程度ていどの  解説かいせつで  構かまいません。本当ほんとうは  ちょっと  違ちがうのですが、  最初さいしょは  この  程度ていどの  認識にんしきで  良よいかと  思おもいます。

  - Systemは  非常ひじょうに  よく  使つかう、  これが  ないと  何なにも  出来できない位くらいの  ものですので、  ほとんどの  プログラムで  使用しよう  されます。

  - C#では、  命令文めいれいぶんの  最後さいごに  ;  (セミコロン)を  つけます。

・ 2行目ぎょうめ    今回こんかいは、  フォーム、  要ようするに  ウィンドウを  使つかった  アプリケーションを  作つくるので、  これらを  作つくる  ための  System.Windows.Forms  も  使つかう、  と  いう  ことを  書かいて  おきます。

・ 3行目ぎょうめ    4行目ぎょうめから  プログラムの  本体ほんたいを  書かくので、  区切くぎりの  ための  空くう行ぎょうです。

・ 4行目ぎょうめ    ここから  プログラムの  本体ほんたいが  始はじまります。

  - 「class Hello: Form  は、  "Helloと  いう、  フォーム(ウィンドウ)の  作つくり方かた"を  書かきますよ。」と  いった  程度ていどの  説明せつめいで  良よいかと  思おもいます。

  - 枠わく線せんや、  タイトルバーと  いった、  どんな  フォーム(ウィンドウ)にも  必要ひつような  部品ぶひんは、  全すべて  自分じぶんで  プログラム  する  わけでは  ありません。

  - 先さき程ほどの  System.Windows.Forms  に  ある  Formと  いう  ところ  (クラス)に、  フォーム(ウィンドウ)に  基本的きほんてきに  必要ひつような  ことが  既すでに  用意ようい  されて  いて、  それを  使つかいます。  と  いう  意味いみの  Formです。

  - あとは、  必要ひつような  部品ぶひんの  配置はいちや、  処理しょりの  仕方しかたを  プログラム  するだけで  よい。  と  いう  わけです。

  - ここは、  命令文めいれいぶんでは  ないので  ;  (セミコロン)を  つけて  いません。  本当ほんとうは  違ちがうのですが・・・。

・ 5行目ぎょうめ    4行目ぎょうめで、  Helloと  いう、  フォーム(ウィンドウ)の  作つくり方かたを  書く、  と  して  いますが、  それが  どこから  どこまでか、  を  示しめす  ために、  ここの  {  と、  11行目ぎょうめの  }  で、挟はさんで  表あらわします。

  - 6行目ぎょうめから  10行目ぎょうめまで、この  {  と  }  の  中身なかみですよ、  と  いう  ことを  表あらわす  ために、  右みぎに  字じ下さげ  (インデント)  するのが  一般的いっぱんてきです。

  - 今回こんかいの  サンプルでは、  1回かいの  字じ下さげを  「スペース  2つ」と  して  います。

・ 6行目ぎょうめ    ここから、  プログラムの  流ながれを  書かいて  いきます。

  - public static void Main()  は、  今いまの  ところは、  決きまり  文句もんく、  と  いった  程度ていどで  良よいかと  思おもいます。

・ 7行目ぎょうめ    6行目ぎょうめの、  public static void Main()  の  中身なかみを、  ここの  {  と、  10行目ぎょうめの  }  で  挟はさんで  表あらわします。

  - 8行目ぎょうめと  9行目ぎょうめを、  この  {  と  }  の  中身なかみですよ、  と  いう  ことを  表あらわす  ために、  右みぎに  更さらに  字じ下さげ(インデント)  して  います。

・ 8行目ぎょうめ    「Helloと  いう、"フォームの  作つくり方かた"に  従したがって、  フォームを  作つくって、それを  変数へんすう  hwに  代入だいにゅう(=)せよ。」と  いう  命令文めいれいぶん、  程度ていどの  説明せつめいで。  これも  決きまり  文句もんくと  いう  扱あつかいでも  構かまいません。  ただ、  変数名へんすうめい  hwは  自由じゆうに  つけられる、  と  いう  ことは  伝つたえて  ください。

  - "代入だいにゅう"に  ついては、  お決きまりの  「箱はこに  入はいれる」と  いった  説明せつめいで  良よいと  思おもいます。

  - =  の  前後ぜんごに  スペースが  入はいって  いるのは、  見みやすく・  読よみやすく  する  ためです。

・ 9行目ぎょうめ    Applicationと  いう、  プログラムを  実行じっこう・  制御せいぎょ  する  機能きのうの  集あつまりから、  Runと  いう、  プログラムを  実行じっこう  する  機能きのう(これを  関数かんすう・ メソッド)を  呼よび出だして、  Helloと  いう  フォームの  作つくり方かたに  従したがって  作つくった  hwを  起き動どう  せよ。  と  いう  意味いみです。  と  いった  説明せつめいで。  もう  少すこし  簡略化かんりゃくか  しても  いいかも  しれません。

・ 10行目ぎょうめ    }  で、  public static void Main()  の  中身なかみを  閉とじます。

・ 11行目ぎょうめ    }  で、  class Hello: Form  の  中身なかみを  閉とじて、  プログラム  終おわりです。

  

3-2-2 タイトルバーに  アプリケーション名めいを  表示ひょうじ  する。

1.csを  閉とじて、  先さき程ほどの  フォームの  タイトルバーに  文字もじを  表示ひょうじ  させる  プログラムに  移うつります。

 

1. サンプルプログラム  2.csを  開ひらき、  先さき程ほどの  プログラムの、  9行目ぎょうめに  命令めいれいを  1行ぎょう  追加ついか  しただけで  あることを  伝つたえて、  プログラムに  目めを  通とおさせて  ください。

 

    サンプル  プログラム    "2.cs"

     1: using System;

     2: using System.Windows.Forms;

     3:

     4: class Hello: Form

     5: {

     6:   public static void Main()

     7:   {

     8:     Hello hw = new Hello();

     9:     hw.Text = "Hello, world!";

    10:     Application.Run(hw);

    11:   }

    12: }

 

2. 「9行目ぎょうめに  追加ついか  した  命令めいれいで、  タイトルバーに  文字もじが  表示ひょうじ  される」  事ことを  確認かくにん  して  いきます。

3. この  プログラムを  コンパイル  し、  実行じっこう  ファイル  2.exeが  出来できる  ことを  確認かくにん  させて  ください。

4. 出来できた  実行じっこう  ファイル  2.exeを  実行じっこう  して  確たしかめる。

・ 実行じっこう  ファイルが  出来できたら、  起き動どう  して、  タイトルバー  "Hello, world!"と  出でて  いる  ことを  確認かくにん  します。

  - 利用りよう  して  いる  スクリーン  リーダーが、  PC-Talkerで  あれば、  Ctrl+Alt+1で  読よみ上あげます。

・ 確認かくにん  したら、  Altキー+Spaceキー  →  Cなどで  フォームを  閉とじさせて  ください。

 

2.exe

画像 

  

 

 

5. プログラムの  詳くわしい  解説かいせつを  行おこないます。

・ 追加ついか  した  9行目ぎょうめ    hwは  フォーム  そのものを  指さして  います。

・ hw.Text  は、  hwの、  hwが  持もって  いる、  Textと  いう  要素ようそ・  変数へんすう・  パラメーターを  示しめします。

・ このように、  C#では、  .  (ピリオド、  今いま風ふうに  言いえば  ドット)で、  モノ  (格好かっこう  良よく  オブジェクト)の  要素ようそを  示しめして  いきます。

・ 日本語にほんごで  「の」に  あたる。  「hw「の」  Textと  いう  要素ようそ  (C#では  プロパティ)」と  言いう  意味いみ。

・ 9行目ぎょうめは、  「'hw'の  プロパティ  Textに  文字列もじれつ  (文字もじの  並ならび)  Hello, world!  を  「代入だいにゅう」、  格好かっこう  良よく  言いうと、  セット  する。」と  いう  意味いみに  なります。

・ C#では、  文字もじの  並ならび、  文字列もじれつは、  "(ダブル  クォーテーション)で  くくります。

・ フォーム  hwの  プロパティ  Textは  何なにか、  と  いうと、  タイトルバーに  表示ひょうじ  する  文字列もじれつを  表あらわすので、  タイトルバーに  Hello, world!  と  表示ひょうじ  された、  と  いう  わけです。

6. では、  アプリケーションに  名前なまえを  つけ、  タイトルバーに  表示ひょうじ  されるように  します。

① この、  フォーム  アプリケーションの  名前なまえを  考かんがえて  もらいます。

 - 時間じかんを  かける  必要ひつようは  ありませんが、  愛あい着ちゃくを  持もって  もらいたいので、  できれば  自分じぶんで  考かんがえて  もらいたい  ところです。

 - あとから  いくらでも  変更へんこう  できる。  と  いう  ことを  伝つたえて、  気楽きらくに  考かんがえて  もらって  ください。

② 2.csを  変更へんこう  して、  考かんがえて  もらった  名前なまえを、  アプリケーションの  タイトルバーに  出でるように  して  もらいます。

③ ファイルを  保存ほぞん  して、  コンパイル  します。

④ エラーが  出でたら、  エラー  メッセージに  従したがって、  一緒いっしょに  修正しゅうせい  して  ください。

 - この  時とき、  エラー  メッセージの  意味いみと  対処たいしょを  できるだけ  説明せつめい  して  ください。

 - たとえば、  ;  が  必要ひつようです。  と  出でれば、  最後さいごに  ;  を  つけ忘わすれて  いたね。  など。

⑤ 実行じっこう  ファイルが  出来できたら、  起き動どう  して、  タイトルバーに  自分じぶんが  つけた  名前なまえが  出でて  いる  ことを  確認かくにん  させて  ください。

7. 時間じかんが  あれば、  どんな  名前なまえを  つけたか  発表はっぴょう  して  もらい、  コメントを  する。

・ 時間じかんが  あれば、  全員ぜんいんの  ものを  確認かくにん  し、  感想かんそうを  言いって  あげて  ください。

  

3-2-3 ボタンを  配置はいち  する。

2.csを  閉とじて、  フォームに  ボタンを  配置はいち  する  プログラムに  移うつります。

 

1. サンプルプログラム  3.csを  開ひらき、  先さき程ほどの  プログラムの、  10行目ぎょうめに  4行ぎょう  追加ついか  した  もので  ある  ことを  伝つたえて、  プログラムに  目めを  通とおさせて  ください。

 

    サンプル  プログラム    "3.cs"

     1: using System;

     2: using System.Windows.Forms;

     3:

     4: class Hello: Form

     5: {

     6:   public static void Main()

     7:   {

     8:     Hello hw = new Hello();

     9:      hw.Text = "アプリケーション名めい";

    10:

    11:     Button btn = new Button();

    12:     btn.Parent = hw;

    13:     btn.Text = "Push";

    14:

    15:     Application.Run(hw);

    16:   }

    17: }

 

2. 「追加ついか  した  命令めいれいで、  ボタンが  配置はいち  される」  事ことを  確認かくにん  して  いきます。

3. この  プログラムを  コンパイル  し、  実行じっこう  ファイル  3.exeが  出来できる  ことを  確認かくにん  させて  ください。

4. 出来できた  実行じっこう  ファイル  3.exeを  実行じっこう  して  確たしかめる。

・ 実行じっこう  ファイルが  出来できたら、  起き動どう  して、  ボタンが  配置はいち  されて  いる  ことを  確認かくにん  します。

  - Tabキーで  フォーカスを  移動いどう  させると、  「Push」の  ボタンで  あることが  読よみ上あげられます。

・ ボタンは、  フォームの  左上ひだりうえ  隅すみに  配置はいち  されて  いる  ことを  伝つたえて  ください。

・ 確認かくにん  したら、  Altキー+Spaceキー  →  Cなどで  フォームを  閉とじさせて  ください。

 

3.exe

画像  

  

 

 

5. プログラムの  詳くわしい  解説かいせつを  行おこないます。

・ 10行目ぎょうめと  14行目ぎょうめの  空行くうぎょうは、  無なくても  構かまいませんが、  その  間あいだの  行ぎょうが  ボタンに  関かんする  プログラムで  ある  ことを  わかりやすく  する  ために  入いれて  います。

・ 11行目ぎょうめ    基本的きほんてきな  ボタンの  作つくり方かたが、  Buttonと  いう  名前なまえ (クラス)で  用意ようい  されて  いるので、  この  作つくり方かたで  ボタンを  作つくり、  btnに  代入だいにゅう  する  (btnと  いう  名前なまえを  つける)。

・ 12行目ぎょうめ    ボタン  btnの  プロパティ  Parentは、  貼はり付つけ先さきを  指定してい  するので、  フォーム  hwを  セット  し、  フォーム  hw  つまり、  今いま  作つくって  いる  フォームに  貼はり付つける。

・ 13行目ぎょうめ    ボタン  btnの  プロパティ  Textは、  ボタンに  表示ひょうじ  される  文字列もじれつを  示しめすので、  文字列もじれつ  "Push"を  セット  する。

・ 今回こんかいは、  貼はり付つける  位置いちを  指定してい  して  いないので、  左上ひだりうえ  隅すみに  配置はいち  されました。

6. 再ふたたび、  先さき程ほど  考かんがえた  名前なまえが  表示ひょうじ  されるように  して、  ボタンに  表示ひょうじ  される  文字列もじれつを  変かえて  もらいます。

① 3.csを  変更へんこう  して、  再ふたたび、  先さき程ほど  考かんがえた  アプリケーション名めいが  表示ひょうじ  されるように  して  もらいます。

② ボタンに  表示ひょうじ  される  文字列もじれつを  考かんがえて  もらい、  変更へんこう  して  もらいます。

③ ファイルを  保存ほぞん  して、  コンパイル  します。

④ エラーが  出でたら、  エラー  メッセージに  従したがって、  一緒いっしょに  修正しゅうせい  して  ください。

⑤ 実行じっこう  ファイルが  出来できたら、  起き動どう  して、  タイトルバーに  自分じぶんが  つけた  名前なまえ、  ボタンに  変更へんこう  した  文字列もじれつが  出でて  いる  ことを  確認かくにん  させて  ください。

7. 時間じかんが  あれば、  全員ぜんいんの  ものを  確認かくにん  し、  感想かんそうを  言いって  あげて  ください。

  

3-2-4 ボタンを  押おすと  メッセージ  ボックスが  表示ひょうじ  される。

3.csを  閉とじて、  ボタンを  押おすと  メッセージ  ボックスが  表示ひょうじ  される  プログラムに  移うつります。

 

1. サンプル  プログラム  4.csを  開ひらき、  先さき程ほどの  プログラムの、  6行目ぎょうめに  4行ぎょう  追加ついか  し、  19行目ぎょうめにも  1行ぎょう  追加ついか  した  もので  ある  ことを  伝つたえて、  プログラムに  目めを  通とおさせて  ください。

ここから  複雑ふくざつに  なって  いきますので、  各自かくじ  ついて  行いけて  いるか  確認かくにん  しながら  進すすんで  ください。

 

    サンプル  プログラム    "4.cs"

     1: using System;

     2: using System.Windows.Forms;

     3:

     4: class Hello: Form

     5: {

     6:   static void btnOnClick(object sender, EventArgs e) 

     7:   {

     8:     MessageBox.Show("押おしたね!");

     9:   }

    10:

    11:   public static void Main()

    12:   {

    13:     Hello hw = new Hello();

    14:      hw.Text = "アプリケーション名めい";

    15:

    16:     Button btn = new Button();

    17:     btn.Parent = hw;

    18:     btn.Text = "Push";

    19:     btn.Click += new EventHandler(btnOnClick);

    20:

    21:     Application.Run(hw);

    22:   }

    23: }

 

2. 「追加ついか  した  命令めいれいで、  ボタンを  押おすと  メッセージ  ボックスが  でる」  事ことを  確認かくにん  して  いきます。

3. この  プログラムを  コンパイル  し、  実行じっこう  ファイル  4.exeが  出来できる  ことを  確認かくにん  させて  ください。

4. 出来できた  実行じっこう  ファイル  4.exeを  実行じっこう  して  確たしかめる。

  ・ 実行じっこう  ファイルが  出来できたら、  起き動どう  して、  ボタンが  配置はいち  されて  いる  ことを  確認かくにん  します。

  ・ ボタンを  押おすと、  メッセージ  ボックスが  出でる  ことと、  メッセージ  ボックスに  ある  メッセージを  確認かくにん  させて  ください。

  ・ 確認かくにん  したら、  「OKボタン」を  押おし、  メッセージ  ボックスを  閉とじて、  Altキー+Spaceキー  →  Cなどで  フォームを  閉とじさせて  ください。

 

4.exe

画像  画像 

  

 

 

5. プログラムの  詳くわしい  解説かいせつを  行おこないます。

・ 6行目ぎょうめ    ボタンを  押おしたら  どうするか、  を  記しるす  イベント  ハンドラと  言いわれる  関数かんすう  (メソッド)を  用意ようい  する  必要ひつようが  あります。  ここで、  btnOnClickと  いう  イベント  ハンドラを  定義ていぎ  する  ための  記述きじゅつです。

 - イベント  ハンドラ名めい  btnOnClickは  自由じゆうに  つける  ことが  出来できますが、  他ほかの  所ところは、  決きまり  文句もんくだと  思おもって  ください。

・ 7行目ぎょうめの  {  と  9行目ぎょうめの  }  で、  この  イベント  ハンドラの  中身なかみを  くくって  います。

・ 8行目ぎょうめ    ここで、  あらかじめ  用意ようい  されて  いる  MessageBoxと  いう、  メッセージ  ボックスを  呼よび出だす  ための  機能きのうを  使って、  メッセージを  表示ひょうじさせて  います。

 - MessageBoxの  Showと  いう  関数かんすう(メソッド)に、  表示ひょうじ  する  メッセージを  与あたえて、  メッセージ  ボックスを  表示ひょうじ  させて  います。

・ 10行目ぎょうめは  区切くぎりを  分わかりやすく  する  ための  空行くうぎょうです。

・ 19行目ぎょうめ    ボタン  btnの  プロパティ  Clickには、  ボタンが  押おされた  ときの  処理しょりを  セット  します。

 - 新あたらしく  動作どうさを  追加ついか  する  ために、  先さき程ほど  作つくった  イベント  ハンドラ  btnOnClickを  追加ついか  して  います。

 - 追加ついかなので、  =  では  なく、  +=  を  使用しよう  して  いる  ことに  注意ちゅうい  して  ください。

 - この  書かき方かたも、  決きまり  文句もんくだと  思おもって  ください。

・ これだけの  作業さぎょうで、  ボタンを  押おすと  メッセージが  出でるように  出来できました。

6. 再ふたたび、  先さき程ほど  考かんがえた  名前なまえが  表示ひょうじ  されるように  して、  ボタンに  表示ひょうじ  される  文字列もじれつを  変かえ、  メッセージ  ボックスの  メッセージを  変更へんこう  して  もらいます。

7. 時間じかんが  あれば、  全員ぜんいんの  ものを  確認かくにん  し、  感想かんそうを  言いって  あげて  ください。

  

3-2-5 テキスト  ボックスを  追加ついか  する。

4.csを  閉とじて、  テキスト  ボックスを  追加ついか  する  プログラムに  移うつります。

 

1. サンプル  プログラム  5.csを  開ひらき、  先さき程ほどの  プログラムの、  2行目ぎょうめに  1行ぎょう  追加ついか  し、  16行目ぎょうめから  5行ぎょう、  23行ぎょうにも  1行ぎょう  追加ついか  した  もので  ある  ことを  伝つたえて、  プログラムに  目めを  通とおさせて  ください。

 

ここから  複雑ふくざつに  なって  いきますので、  各自かくじ  ついて  行いけて  いるか  確認かくにん  しながら  進すすんで  ください。

 

    サンプル  プログラム    "5.cs"

     1: using System;

     2: using System.Drawing;

     3: using System.Windows.Forms;

     4:

     5: class Hello: Form

     6: {

     7:   static void btnOnClick(object sender, EventArgs e)

     8:   {

     9:     MessageBox.Show("押おしたね!");

    10:   }

    11:

    12:   public static void Main()

    13:   {

    14:     Hello hw = new Hello();

    15:      hw.Text = "アプリケーション名めい";

    16:

    17:     TextBox box = new TextBox();

    18:     box.Parent = hw;

    19:     box.Text = "こんにちは";

    20:

    21:     Button btn = new Button();

    22:     btn.Parent = hw;

    23:     btn.Location = new Point(0, box.Height);

    24:     btn.Text = "Push";

    25:     btn.Click += new EventHandler(btnOnClick);

    26:

    27:     Application.Run(hw);

    28:   }

    29: }

 

2. 「追加ついか  した  命令めいれいで、  フォームに  文字列もじれつが  表示ひょうじ  される」  事ことを  確認かくにん  して  いきます。

3. この  プログラムを  コンパイル  し、  実行じっこう  ファイル  5.exeが  出来できる  ことを  確認かくにん  させて  ください。

4. 出来できた  実行じっこう  ファイル  5.exeを  実行じっこう  して  確たしかめる。

・ 実行じっこう  ファイルが  出来できたら、  起き動どう  して、  テキスト  ボックスに  「こんにちは」と  表示ひょうじ  され、  ボタンも  配置はいち  されて  いる  ことを  確認かくにん  します。

  - 位置いちに  ついては、  テキスト  ボックスの  すぐ  下したに  ボタンが  表示ひょうじ  されて  いる  ことを  伝つたえて  ください。

・ テキスト  ボックスの  中なかは  編集へんしゅう  できる  ことを  確認かくにん  させて  ください。

・ 前回ぜんかいと  同おなじく、  ボタンを  押おすと、  メッセージ  ボックスが  出でる  ことと、  メッセージ  ボックスに  ある  メッセージを  確認かくにん  させて  ください。

・ 確認かくにん  したら、  フォームを  閉とじさせて  ください。

 

5.exe

画像 

  

 

 

5. プログラムの  詳くわしい  解説かいせつを  行おこないます。

・ 2行目ぎょうめ    ボタンの  位置いちを  変更へんこう  する  必要ひつようが  あるので、  その  ために  System.Drawing  を  使つかう  ことを  宣言せんげん  します。

・ 17行目ぎょうめ    テキスト  ボックスを  配置はいち  する  ために、  boxと  言いう  名前なまえで  テキスト  ボックスを  作成さくせい  します。

 - ボタンを  作つくる  ときの  書かき方かたと  同おなじです。

・ 19行目ぎょうめ    ボタンの  文字列もじれつを  セット  したのと  同様どうように、テキスト  ボックス  boxの  文字列もじれつを  セット  して  います。

・ 23行目ぎょうめ    そのままでは、テキスト  ボックス  boxも、  ボタン  btnも、  フォームの  左上ひだりうえ  隅すみに  配置はいち  されて  重かさなって  しまうので、  ボタンの  位置いち  Locationを  セット  します。

 - new Point(0, box.Height)  は、  ボタンの  左上ひだりうえ  隅すみの  x座標ざひょうを  0と  し、  y座標ざひょうは、  テキスト  ボックス  boxの  高たかさだけ  下したに  ずらした  所ところを  指定してい  します。

 - フォーム上じょうの  座標ざひょうは、  フォームの  左上ひだりうえ  隅すみを  (0, 0)と  し、  右みぎに  行いけば  x座標ざひょうは  増加ぞうか  し、  下したに  行いけば  y座標ざひょうが  増加ぞうか  します。

 - 数学すうがくの  グラフで  出でて  くる  座標ざひょうとは  上下じょうげが  逆ぎゃくです。

 - テキスト  ボックス  boxの  高たかさは、  box.Heightで  取得しゅとく  できます。

・ これだけの  作業さぎょうで、  テキスト  ボックスを  配置はいち  し、  その  下したに  ボタンを  配置はいち  する  ことが  出来できました。

6. 再ふたたび、  先さき程ほど  考かんがえた  名前なまえが  表示ひょうじ  されるように  して、  ボタンに  表示ひょうじ  される  文字列もじれつを  変かえ、  メッセージ  ボックスの  メッセージを  変更へんこう  し、  テキスト  ボックスの  文字列もじれつを  変更へんこう  して  もらいます。

7. 時間じかんが  あれば、  全員ぜんいんの  ものを  確認かくにん  し、  感想かんそうを  言いって  あげて  ください。

  

3-2-6 発展はってん  させて、  クイズ  ゲームを  作つくりました。

5.csを  閉とじて、  これまでの  応用おうようの  クイズ  ゲームの  プログラムに  移うつります。

 

1. サンプル  プログラム  6.csを  開ひらき、  プログラムに  目めを  通とおさせて  ください。

 

追加ついか  した  プログラムで、  何なにを  して  いるか  分わかる  ところが  あるか、  あれば、  何なにを  して  いるか  発表はっぴょう  させて  ください。

 

サンプル  プログラム    "6.cs"

 1: using System;

 2: using System.Drawing;

 3: using System.Windows.Forms;

 4:

 5: class Hello: Form

 6: {

 7:   static void btn1OnClick(object sender, EventArgs e)

 8:   {

 9:     MessageBox.Show("正解せいかい!");

10:   }

11:

12:   static void btn2OnClick(object sender, EventArgs e)

13:   {

14:     MessageBox.Show("残念ざんねん!");

15:   }

16:

17:   public static void Main()

18:   {

19:     Hello hw = new Hello();

20:     hw.Text = "アプリケーション名めい";

21:

22:     TextBox box = new TextBox();

23:     box.Parent = hw;

24:     box.Width = box.Width*2;

25:     box.Text = "茨城いばらきの  県庁けんちょう  所在地しょざいちは?";

26:

27:     Button btn1 = new Button();

28:     btn1.Parent = hw;

29:     btn1.Location = new Point(0, box.Height);

30:     btn1.Text = "水戸市みとし";

31:     btn1.Click += new EventHandler(btn1OnClick);

32:

33:     Button btn2 = new Button();

34:     btn2.Parent = hw;

35:     btn2.Location = new Point(0, box.Height + btn1.Height);

36:     btn2.Text = "つくば市し";

37:     btn2.Click += new EventHandler(btn2OnClick);

38:

39:     Application.Run(hw);

40:   }

41: }

 

6.exe

画像   

 

2. 時間じかんが  あれば、  この  プログラムを  変更へんこう  して、  クイズ  ゲーム、  更さらに  オリジナルの  アプリケーションを  作つくって  みて  ください。

  

3-3 注意ちゅうい  すべき  点てん

・ あまり  用語ようごなど  厳密げんみつに  やる  必要ひつようは  ありませんが、  本当ほんとうの  意味いみ・  解釈かいしゃくは  別べつに  あると  いう  ことは  伝つたえて  おく  必要ひつようが  あると  思おもいます。

・ できれば、  それを  知しりたい・  勉強べんきょう  したい、  と  思おもわせるように  持もって  行いけるのが  理想りそうです。

  

3-4 到達とうたつ  目標もくひょう

・ プログラムを  した、  と  いう  経験けいけんだけで  十分じゅうぶん。

・ 今回こんかいは、  サンプル  プログラムを  いじった  程度ていどなので、  フラストレーションを  バネに、  もっと  自分じぶんで  やって  みたい。  と  思おもって  くれれば  更さらに  よい。

4 生徒せいと用よう  資料しりょう

4-1 概要がいようと  目的もくてき、  目標もくひょうの  説明せつめい

プログラミング  言語げんご  C#で、  シンプルな  GUI(Graphical User Interface)  アプリケーションを  作つくる  ことで、  Windows  アプリケーション  開発かいはっの  最初さいしょの  一歩いっぽを  踏ふみ出だします。  時間じかんが  限かぎられて  いますので、  難むずかしい  ことは  置おいて  おいて、  まず  プログラミングの  楽たのしさ、  そして  気き軽がるに  作つくれる  ものだと  いう  ことを  感かんじて、  今後こんご、  自分じぶんで  色いろ々いろと  作つくって  みる  入口いりぐちと  して  ください。

  

4-2 実施じっし  内容ないようの  説明せつめい

サンプル  プログラムを  見みながら、  少すこし  変更へんこうを  加くわえて、  アプリケーションを  作つくって  いきます。

  

4-3 当日とうじつ  ワークショップ内ないで  使つかう  資料しりょう

あらかじめ  用意ようい  した  サンプル  プログラムのみです。  持もって  帰かえって、  色いろ々いろと  いじって  みて  ください。