tanaka's Programming Memo

プログラミングについてのメモ。

C#

ジェネリッククラスの継承。抽象、インターフェイスも添えて

ジェネリッククラスを継承するための定義の書き方で難儀したのでメモ。 以下、簡易シングルトンをジェネリックで扱いつつ、それを更に解消しつつ、インターフェイスも実装。 public abstract class ResqueActionBase<T> : SimpleSingleton<T> where T : IResqueAct</t></t>…

TextMeshPro向け ASCIIコード+JIS第1水準の文字

TextMeshProを使う時にフォントアセットを作成します。その際に使える限りの文字を定義してくださっているありがたいファイルが公開されてはいるのですが、容量食うし、テスト段階ではほどほどのやつでいいのです。ざっと探したのですが見つからなかったので…

703 for文の使い方

プログラミングの6つのミソのうち、最後が「繰り返し処理」である。 •入力 •処理 •出力 •順次処理 •分岐処理 •繰り返し処理沢山のデータを記録する配列を使うことで、3つのラベルを動かすことができた。しかし、もっとLabelを増やすには、Labelの個数だけプ…

701 配列の使い方(ラベルを3つに増やす)

目指すことは、沢山のラベルがフォーム内を動き回って、それらをすべてマウス操作で消すことである。ここまでで、ラベルを1つ動かして、マウスを重ねると消えるプログラムを作成した。次は、複数のラベルを動かす方法を学びながら、配列と、最後のミソである…

702 プログラムでコントロールを作成する方法

Labelも配列にしたい。ここではLabelのようなコントロールをプログラムで生成する方法を紹介して、演習のLabelを配列に書き換えることを目指す。 ここで目指すこと コントロールをプログラムで作成する方法を知ること プログラムでLabelを作成すること Label…

602 ifで2つ以上の条件を判定する(当たり判定)

ここでマスターしたいこと 2つ以上の条件の判定を書けるようになること マウスがlabel2の上に重なったら、label2を消せるようになること 複数の条件を判定する「&&」と「||」 ifの使い方で、変数がある値だった時の判定を作ることができるようになった。では…

601 ifの使い方(ラベルを跳ね返らせる)

プログラミングの6つのミソのうち、入力と出力、そして処理の基本である「順次処理」を学んだ。 入力 処理 出力 順次処理 分岐処理 繰り返し処理 ラベルが動き始めると、ラベルを画面内で跳ね返るようにしたい、マウスをラベルに重ねるとラベルを消したいな…

506 乱数の使い方

ここでマスターしたいこと 乱数が何かを知ること 乱数を使えるようにすること 乱数とは サイコロのようなもの 出したい目の範囲は自由に設定できる シミュレーションやゲームによく利用する(RPGの戦闘など) ランダムともいう サイコロを作ってみる 新しいプ…

505 マウス座標の取得方法

ここでマスターしたいこと マウス座標の取得方法を知ること。 取得した座標を利用できるようにすること。 マウス座標を表示してみる タイマーの使い方と変数型の変換で学んだ方法を利用して、100ミリ秒ごとに、ラベルにマウス座標を表示するプログラムを作成…

504 変数型の変換(型キャスト)

ここでマスターしたいこと int、float、stringの間で、相互にデータのやりとりができるようにすること。 型違い C#では、以下のような型の変数へ、ある型のデータを直接代入することはできない。 int型 ← string型 int型 ← float型 float型 ← string型 strin…

503 タイマーの使い方

ここでマスターしたいこと タイマーコントロールの使い方を知ること タイマーの使い方 四則演算と余りの応用で作成したプロジェクトに、以下を追加していく。 作業手順動画 503 timer x264 - YouTube InternetExplorerかFirefox推奨 作業手順 ツールボックス…

502 四則演算と余り

ここでマスターしたいこと 四則演算と余りの計算ができるようになること。 コントロールをプログラムで動せるようになること。 前提 変数とはで紹介したように、四則演算はint型やfloat型といった数値型のデータで利用できる。 余りはint型などの整数型で利…

501 計算-文字列の結合

ここでマスターしたいこと 計算式の書き方を覚えること。 文字列の結合方法を知ること。 文字列の結合 例1 textBox1.Textなどは、文字列型の変数である。 以下に、textBox1に入力された文字列の前に「こんにちは、」と結合して表示するプログラムを抜粋する…

403 変数の使い方(代入 / 読み出し / 定義)

ここでマスターしたいこと 変数の使い方を知ること 自分で自由に変数を定義できるようになること 動画 textBox1の内容を、string型の変数strに代入して、それをlabelやメッセージで表示するサンプルを以下に示す。 403 変数の使い方(代入 / 読み出し / 定義…

402 変数とは - 代表的な4種類の変数型(int / String / float / bool)

ここでマスターしたいこと 変数(へんすう)を知ること。 変数の代表的な4つの型を知ること。 変数とは データを記録するための入れ物のことを変数(へんすう)という。 これまで使ってきたプロパティも変数である。 入力した値を入れておいたり、計算したり…

401 プログラムを実行する順番

プログラミングの6つのミソのうち、入力と出力を学んだ。残る処理は、「順次処理」「分岐処理」「繰り返し処理」に分かれる。ここでは基本の処理である「順次処理」について勉強しよう。 入力 処理 出力 順次処理 分岐処理 繰り返し処理 ここでマスターした…

301 TextBoxを使った入力

プログラミングの6つのミソのうち、出力について学んだ。次は入力を学ぶ。 入力 処理 出力 順次処理 分岐処理 繰り返し処理 ここでマスターしたいこと TextBoxを使えるようにすること。 TextBoxに入力した内容を、MessageBoxやLabelに表示すること。 動画 ボ…

203 Labelの使い方

MessageBoxはクリックしないと先に進まないので、今回の目的である沢山のキャラクタを動かすための出力としては使えない。そこで、フォーム上に情報を表示するためのコントロールであるLabelの使い方をマスターする。 ここでマスターしたいこと ラベルの操作…

202 MessageBoxの使い方

ここでマスターしたいこと 文字列を表示できるようにすること。 C#の命令を使えるようにすること。 まずは推測してみよう すでに登場しているが、以下は「こんにちは」とダイアログに表示するプログラムである。 MessageBox.Show("こんにちは"); では「おは…

201 Buttonとプロパティ

プログラミングの6つのミソの習得を始める。 入力 処理 出力 順次処理 分岐処理 繰り返し処理 上記のうち、すぐに成果が分かるのが出力である。まず、出力から学ぶ。 ここでマスターしたいこと Buttonを使えるようになること。 プロパティを使って、ボタンの…

103 代表的な5つのエラー

ここでマスターしたいこと 以下をチェックして、自力でエラーを直せるようにすること。 代表的な5つのエラー 入力ミス 初心者のミスの大半が入力ミスである。こちらに従ってエラー箇所を表示させて、見本と一文字一文字見比べよう。 全角入力 入力ミスが見つ…

102 半角と全角 / コメント / コードとデザイナーの切り替え / 行末はセミコロン(;)

C#でプログラミングする時に知っておくべき最低限のルールを紹介する。覚えておこう。 ここでマスターしたいこと プログラムを書くときは、必ず半角にする癖をつけること。 コメントを書く癖をつけること。 コードとデザイナーを知り、思い通りに切り替える…

101 プログラムを書く場所

プログラムコードの全体の構造について説明して、ボタンを押した時のプログラムをどこに書けばよいかがわかるようにしたい。 ここでマスターしたいこと ボタンを押した時に実行するプログラムコードを、どこに書けばよいかがわかること。 プログラムを実行し…

010 エラーその2-プログラムを記述する場所-

手順 本来は、ボタンをダブルクリックして表示された場所にプログラムを記述するべきだが、外に入力したとする。 エラーが発生する。 プログラムを正しい場所に移動する。 場所が変わるだけで、プログラムは正しく実行されるようになる。 動画 010 エラーそ…

009 エラーその1-文法エラー-

手順 プログラムに間違いがあるとエラーウィンドウが表示される。必ず「いいえ」を選んでプログラムを停止すること。 エラーは画面下の「エラー一覧」に表示されるので、一番上から読んでいく。この例では、22行目に;が足りないことがわかる。 エラーの表示…

008 ツールボックスが使えなかったり、プログラムが変更できない時の対処

ツールボックスにボタンなどが全く表示されなかったり、プログラムの変更ができない時がある。原因は、起動したプロうグラムの停止のし忘れである。確認方法は以下の通り。 手順 タスクバーに、赤と黄色と青のアイコンが表示されている場合は、プログラムが…

007 最初のプログラム-HelloWorld-

[あいさつ]ボタンを押したら「こんにちは」と表示するプログラムを開発する。 手順 [あいさつ]ボタンをダブルクリックする。 [コードエディタ]に画面が切り替わる。 カーソルが表示されているそのままの場所に、以下のプログラムを入力する。 MessageBox.Sho…

006 ツールボックス、プロパティウィンドウ、ソリューションエクスプローラーの表示方法

手順 [表示]メニューからそれぞれ選べばよい。 画面の端に隠れている場合は、クリックして表示する。 画鋲のようなアイコンをクリックして縦にすると編集しやすい。画鋲が横だと、しばらく操作しないと隠れるようになる。 動画 006 ツールボックス、プロパテ…

005 プロジェクトを読み込んだ後にフォームが開かない場合の対処

プロジェクトを読み込んでもフォームが表示されない場合がある。フォームの表示方法を以下に示す。 手順 [表示]メニュー>[ソリューションエクスプローラー]を開く。 表示されたソリューションエクスプローラーから[Form1.cs]などのフォームのファイルをダブ…

004 保存したプロジェクトを読み込む

手順 エクスプローラーを開く(インターネットエクスプローラーではないので注意)。 [ライブラリ]>[ドキュメント]を開く。 Visual Studio 2012(使っているバージョンに置き換えてください)フォルダを開く。 [Projects]というフォルダの中に、保存したプロジ…