【C# Form ソースコード】先ず、コードで便利な機能。

当ページのリンクには広告が含まれています。

 こんにちは、皆さん。今日は、「プログラムコード」について、お話ししたいと思います。

 コンピューターの「プログラムコード(以下、コード)」というと、かなり難しいと思っている方も多いと思いますが、「C#」の場合は比較的簡単に、プログラムを組むことが出来ます。

 まぁしかし、簡単とは言っても「プログラム言語共通の基礎」というのは、どんな言語においても必要になります。

 それに関しては、色んな所で勉強するしかないので、このサイトでは詳しい解説は行いません。ただし、必要な部分に絞って解説する場合はあります。

 では、何が簡単なのかを説明します。実は、昔のプログラムというのは、「画面」や「ファイル」に関する「入出力プログラム」に関しては、「自前」で実装する必要がありました。これは、かなり難しい分けです。

 しかも、一つの事柄だけではなく多種多様なパターンに、対応しなければなりません。これだけでも、相当な「プログラムステップ」になる分けです。

 その上で、該当するアプリケーションの機能を、作り込んで行く分けです。それは本当に、天文学的に難しくて大変な作業になります。

 ところが、「C#」の場合は、上記の「画面に関する入出力のプログラム」は、各コントロールの中に予め実装されている分けです。

 或いは、ファイル関係の「入出力」は、それ専用の「class(クラス)」として、非常に高性能なものが、標準として実装されています。

 しかも、プロパティーという形で、色んなパターンに対応出来るようになっています。本当に、凄く便利なんです。

 ですから、「コード」を数行書くだけで、「高性能な入出力」が出来るようになっています。

 例えば、「TextBox コントロール」の場合は、何もしなくても「テキストエディター」のような入出力が、簡単に行えるようになっています。これは、本当に有り難いことなんです。

 ですから、「C#」の場合は、多くの時間を「アプリケーションの機能」を、作り込むことに専念できる分けです。それによって、より良い物を作れる可能性が、高くなります。

 それでは、色々と見て行きましょう。

目次

C# のプログラミングスタイルについて。

 「C#」のプログラミングスタイルというより、「Windows」のプログラミングスタイルというのは、イベントを処理する「イベントドリブン型」のスタイルになります。

 これは、どういう意味かというと、Windows 上で何らかの「操作」や「通知」が行われると、そのタイミング(イベント)で必要に応じて、それに対応する「プログラムを書く」という事なんです。

 これを、「イベント駆動型プログラム」と言います。このイベントは、「Windows のOS」からアプリケーションに通知されます。まぁこれは、あくまでも基本的なことなので、それ以外にも色々あります。

 そして、「C#」の場合は、上記でも説明しましたが、「何らかの入出力」に関しては、「色んなコントロールや class(クラス)」という形で殆ど提供されているので、アプリケーションに関すること以外は、何もする必要はありません。

 これが、「RAD(Rapid Application Development)ツール」というものです。

 ですから、「Hello World !」というプログラムも、数分で素晴らしいものが作れます。丁度、「Html、CSS」でも、同じような事が出来るのと同じです。

 そうですね、具体的に主によく使う「コントロール」としては、以下のものがあります。

  • Label コントロール  
  • Button コントロール  
  • TextBox コントロール  
  • ComboBox コントロール  
  • List コントロール  
  • TabControl コントロール  
  • Panel コントロール  
  • GroupBox コントロール  
  • PictureBox コントロール  
  • CheckBox コントロール  
  • RadioButton コントロール  
  • SplitContainer コントロール  
  • HScrollBar コントロール  
  • VScrollBar コントロール  

 これらのコントロールを駆使して、色んなアプリケーションを作ります。また、イベントも豊富に実装されているので、特に特別な事をしない限り、使い熟せません。m(_ _)m

 更に、「Windows 共通」のUIを提供してくれるコントロールとしては、以下のものがあります。

  • MenuStrip コントロール  
  • StatusStrip コントロール  
  • ToolStrip コントロール  
  • ContextMenuStrip コントロール  
  • OpenFileDialog コントロール  
  • SaveFileDialog コントロール  
  • FontDialog コントロール  
  • ColorDialog コントロール  
  • PrintDialog コントロール

 これらは、皆さんもご存じのように、汎用的なアプリケーションには、必ず付いて来る「メニューバー」や「ステータスバー」や「ツールバー」です。 

 また、データを開いたり保存したりする為に、ファイルを選択するダイアログボックスです。プリントの選択や、フォントの選択や、カラーの選択もあります。

 個人でこれらも物を実装しようとすれば、天文学的に出来ません(笑)。m(_ _)m

 それ以外にも、非常に高度なコントロールとしては、以下のものがあります。

  • RichTextBox コントロール  
  • ListView コントロール  
  • TreeView コントロール  
  • PropertyGrid コントロール  
  • DataGridView コントロール  
  • WebBrowser コントロール

 これらは、コントロール自体が相当高度なので、使い熟すのも相当高度になります。更に、まだまだ色んなコントロールがあります。また、自分でコントロールを作ることも出来ます(UserControl)。

IDEでソースコードに関する部分です。

 それでは先ずは、最初のソースコードの画面を見てみましょう。

画像:最初の画面

 最初は、この状態になります。Form 名を変更しているので、オリジナルの最初の画面とは異なります。この画面になる為には、以下の関連記事を参考にしてください。

 まぁ全体を、暫く遠目に眺めてみましょう。最初は分からないのが普通なんですが、分かる部分も少しはあるかも知れません(笑)。

 次に、一番上の「メニュー項目」の内容を、マウスをクリックしながら或いは移動しながら、全項目を一通り見てみましょう。

 後は、色んな所にマウスを動かす(置く)と、日本語の説明(ツールチップ)がそれぞれ表示されるので、一通りざっと見ておきましょう。全体を見るという意味で、以上です。

 多分、感想としては、天文学的にその凄さに驚くと思います。私も未だに驚いていますし、使い熟せていません(激汗)。

それでは、個別に見て行きましょう。

 実は、非常に多種多様に設計されているIDEなんですが、初心者に必要な部分は意外と少ないのです(ラッキー)。それを、見て行きましょう。

ソースコードの表示の大きさを変更します。

 上記の「画像:最初の画面」で、「下の方でやや左側」に「 125% 」というのが見えますが、ここで色々と変更できます。通常は、「100%」なんですが、私は「125%」で使っています。

 これだと、やや遠くから見ることが出来るので、良いかなと思っています。「▼」をクリックすると、既定の%を選択することが出来ます。また、個別に入力することも出来ます。

 その列の右の方には、「行、文字、列」というのが表示されていますが、本当に「至れり尽くせり」で頭が下がります。m(_ _)m

 「行」といのは、そのまま行なんです。「文字」というのは、半角・全角に関係なく一文字として扱います。「列」というのは、半角を基準にした値だと思います。

 それぞれ、分野によって意味がありますが、「C#」で扱うのは基本的に「行と文字」です。実は、「C#」で「列」を計算するのは、結構難しかったりします(笑)。

ソースコードを表示するには?

 「画像:最初の画面」では、既にソースコードが表示されているのですが、そうでは無い場合は、右側にある「ソリューションエクスプローラー」で、表示したいファイルをクリックします。

 因みに、ソリューションエクスプローラーに表示されているのは、実はファイルなんです。例えば、「FirstForm.cs」とか「FirstForm.Designer」とか、「Program.cs」とかです。

 そして、一番上にある「ツールバー」の中にある、「<>(コードの表示)」をクリックします。これで何時でも、ソースコードを表示することが出来ます。

 逆に、「デザイナー」を表示したい場合は、ファイルを「ダブルクリック(ディフォルト)」すれば表示されます。また、最上位にあるメニューの「表示(V)」からでも、同じことが出来ます。

 そうですね、個人で「小規模なプログラム開発」を行う場合は、この二つの操作が殆どですね。後は、イベントの操作があるのですが、それはまた、別の機会に紹介したいと思います。

 それと、まぁ私は、大画面で目一杯広げて「画像:最初の画面」の状態で、プログラムを作ることが多いのですが、場合によっては左右何方かの「ペイン」が、表示出来ない場合があります。

 その時は、一つの「ペイン」に全てを入れて置けば、一つの「ペイン」で全てを表示することが出来ます。移動は、「ドラッグ&ドロップ」で出来ます。

プログラムを動かす方法は、何処にあるのでしょうか?

 プログラムというのは、「ローマは一日にして成らず」と同じで、一気に全てが作れる分けではありません。本の少し作っては動かし、作っては動かしを繰り返していきます。

 ですから、動かすというのは一番重要なんです。そしてそれは、IDEの上段のツールバーに表示されている、緑色の三角形で「▽ 開始」をクリックします。

 又は、キーボードから、「 F5 」を押下します。

 この場合、エラーの個所があると、自動的に止まって「エラーの原因」を表示してくれます。

 これは、非常に強力な「デバック機能」で、殆どのエラーをカバーしてくれます。ただし、それでも分らないエラーは、幾らでもあるので「自分で何らかの情報」を、表示したりします。

 「メッセージボックス」や「ステータスバー」に、情報を表示してデバッグを行います。

 ここで注目したいのが、その二つ左側に、「Debug ▽」というのが見えます。このコンボボックスをクリックすると、「Debug、 Release、 構成マネージャー…」が選択できるようになります。

 しかし、初心者の方が、これを変更することは不要です。Release にすると、「実行ファイルが最適化されて、速度がやや早くなる」というメリットはありますが、エラーを追跡できないというデメリットもあります。

 ですから、自分で使う場合は、ずっと「Debug 」のままで良いと思います(笑)

プログラムを止める方法は、何処にあるのでしょうか?

 こちらも、一番重要です。これが分からないと、動かすことが出来ません(笑)。

 方法は、以下の4通りあります。

  1.  実行されている「Form」の「右上の ×をクリックする(通常)。
     
  2.  IDEの上段ツールバーの赤い ■(デバッグの停止)」をクリックする(その次)。
     
  3.  IDEの上段メニューの「デバッグ」-「デバッグの停止(E)」をクリックする。
     
  4.  IDEの何処かをクリックしてから、「 Shift F5 」を押下する。

 それ以外に、どうしても止めることが出来ない場合は、「Windows のタスクマネージャー」で、止めることが出来ます。

その他ツールバー等で必要なもの。

 なんですが、基本的には「画像:最初の画面」の状態で、大体大丈夫です。しかし、場合によっては色んなツールが必要になるので、その場合は、IDEのメニューの「表示(V)」の中に色々とあります。

 また、「表示(V)」-「その他のウィンドウ(E)」と「ツールバー(T)」の中にも、色々とあります。まぁ、初心者の方が使うことは、余り無いと思いますが。

 後は、「デバッグ(D)」や「ツール(T)」の中にも色々とありますが、こちらも初心者の方が使うことは余りないと思います。

コメントを付けましょう。

 プログラムを作成する過程において一番重要なのは、実は「コメント」なんです(ウソッ?)。嘘ではありません、「高がコメント、然れどコメント」なんです。

 プログラムというのは作っている時は、色々と頭の中で整理して覚えているのですが、一週間も放置しておくと、完全にロジックは忘れます。

 一年も経つと、自分が作った事さえ思い出せません(笑)。ですから、「コメント」「著作者名」を入れて置くことが、唯一自分が作ったという証になります(爆笑)。

 それともう一つ重要な事は、使用する変数名は、必ず「意味のある変数名」にして置きましょう(また、別の機会に紹介します)。長くなっても構いません。とは言っても、物事には常識というのがあるので程々に。

 それでは、コメント機能を見て行きましょう。

先ずは、一番簡単なコメントで、一番よく使います。

 実は、驚くかも知れませんが、このコメント方法は「C++」と同じなんです(笑)。ですから「C#」は、間違いなく「C++」の流れを汲んでいます(高級)。

 それは、「//」と「/*~*/」の二種類です。それぞれの特徴は、以下の通りです。主に、メンバー内の「コードの説明用」として使います。

種 類説  明
// 空白を除いて、先頭に「//」を入れると、コメント行になります。この場合は、一行単位のコメントになるので、複数行をコメントにしたい場合は、複数行入れます。例えば、

   // コメント一行目
   // コメント二行目
   // コメント三行目

 のようになります。こちらは、複数行にも結構使います。というより、殆どこれを使うと言っても、過言ではありません(笑)。

 というのは、コメントだというのが、一目で分かるので。
/* ~~ */ 空白を除いて、先ず先頭に「/*」を入れます。そして、コメントの終わりに「*/」を入れると、複数行に渡ってコメントになります。

 こちらが凄いのは、たった四文字で複数行に渡って、コメントに出来ることです。

   /* コメント一行目
     コメント二行目
     :   :   :
     コメント最終行 */

 のようになります。一見便利なんですがコメントだというのが、少し分かり辛くなります。とは言っても、慣れと好みの問題なので、どちらでも好きな方でどうぞ。

 私の場合は、デバッグをする時によく使います。というのは、一時的に実行したくないコードを、これを使って「コメントアウト」にして置きます。
 

XMLコメントは、秀逸です。

 このコメント方法は、「目的別」に項目を分類できる機能があります。また、見た目も分かり易く、入力も非常に楽に行えます。主に、ソースコードの「メンバーの見出し」に使います。

 更に、「Sandcastle」という、Microsoft 社のドキュメントジェネレーターを使うと、自動的に分かり易い形式のドキュメント(ヘルプ)が生成できます。

 ただし、「Sandcastle」は、それなりに難しいので、ネット検索を通じて習得してください。このサイトでは、行いません。m(_ _)m

 「XMLコメント」は、現在18種類あるので、全ての説明をすることはしません。主に、よく使うものを列挙してみたいと思います。

 C#のマニュアルの「ドキュメント コメント用の推奨タグ」に、全ての説明があります。

種 類説  明
<summary>メンバー(プロパティー、メソッド、イベント)の概要を説明します。

/// <summary>
/// メンバーの概要を記述します。
/// </summary>
private void AnyMethod()
{
}

という使い方をします。
<remarks>補助的な説明を記述する場合に使います。<summary>の下に置きます(笑)。
<param>メンバーに「引数」が伴う場合に、その変数を説明する場合に使います。

「引数」と「パラメーター」は、混同し易いのですが、引数は「中身」でパラメーターは「外見」です(汗、合ってる?)。
<returns>メンバーに「戻り値」が発生する場合に、追加します。

そうですね、これを丁寧に解説しておくと、後々楽になりますね。<param>も同じです。中々、出来ないのですが。

 使い方は、空白行の何処かで「///」を入力するか、「/// <」を入力すれば、自動的にインテリセンス(コード支援)が働いて、そこから選択するだけです。

結果を表示しておきます。

 簡単ではありますが、これくらいにして置きます。後はその都度、ヘルプを参照すれば良いと思います。

最後に、Program.cs について。

 実は、目立たないのですが、これが一番重要なんです(笑)。

 こちらは、IDEが自動的に作成したもので、オリジナルの状態です。ただし、フォームの名前が、「FirstForm クラス」に成っています。

 簡単に説明すると、「▽ 開始」または「F5」を押下すると、一番最初に起動するのが、上記にある「static void Main()」という、アプリケーションのエントリーポイントです。

 そして、この中で色んなことが出来るようになっています。簡単にすることも、難しくすることも出来ます。ディフォルトの場合は、「FirstForm クラス」のインスタンスを作成して、実行しています。

 この方法は、通常の「Form クラス」の表示方法とは異なりますが、特に気にする必要はありません。そういう方法もあるということです。

 まぁ、初心者の方が、この「Main()」の中を触るということは、殆どないと思います。

まとめ。

 今回は、非常に基本的なことを説明しました。慣れてくれば、「当たり前中の当たり前のこと」なんですが、「最初は先ずは、中身よりも外見から」という、持論もありますので説明しました。m(_ _)m

 それでは、この辺でごきげんよう。(^.^)/~~~

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

還暦を過ぎた、サンデープログラマーです。

特技は、今はしませんが、スポーツ全般。
趣味は、テレビで映画鑑賞、推理小説、器用貧乏。

還暦を過ぎてから、ブログを始めました。よろしくお願いいたします。

コメント

コメントする

目次