Deprecated : The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
C#
超初心者のプログラム入門(C#)
前田稔(Maeda Minoru)の超初心者のプログラム入門(C#)のページへようこそ。
Console Mode & Windows Mode & Game Program も掲載しています。 (^_^;
C#ページ検索抜粋
前田稔の超初心者のプログラム入門
C# index
Programming Guide
C# Console Mode Program
C#プログラム紹介
C# Program Guide
C#はC言語の後継言語で「C言語より半音高い(#)仕様?」の言語です。
テンプレートを使って Hello C#
C# のテンプレートを使って、WriteLine で "Hello C# Console Programing" と表示します。
Hello C#
[空のプロジェクト] の作成方法と簡単なプログラムの書き方を学んで下さい。
変数の値を表示する
変数に格納されている数値と文字を C# の WriteLine で編集して表示します。
☆Windows モードで WriteLine を実行すると出力ウインドウに印字されます。
日付と時刻を表示する
本日の日付と現在の時刻を C# の DateTime で取得します。
数値の計算をする
変数に格納されている数値の計算結果を C# の WriteLine で表示します。
変数の値を入れ替える
二個の変数の値を入れ替えます。代入の基礎です。
三個の最大値
三個の変数から最も大きい値を調べて表示します。C# if 命令(比較)の基礎です。
三個のソート
三個の変数を昇順(小さい順)に並べ換えます。
1~100までの合計
1~100までの合計を表示します。C# for ループの基礎です。
C#プログラム入門
While Loop
While Loop(条件ループ)で最大公約数(GCM)を求めます。
変数を編集して表示する
String型や int型を c# WriteLine で編集して表示します。
コンソールから入力する
名前と年齢を C# ReadLine でコンソールから入力して表示します。
C#算術データの型
C#で使われる代表的な算術データの型と、最小値(MinValue)と最大値(MaxValue)の説明です。
データの編集と表示
C#でC言語の printf() と同様に、データを編集して表示します。
String を int に変換
コンソールから入力した文字列(String)を C# の Convert.ToInt32 で int に変換して計算します。
入力データの最大値
C# の ReadLine でコンソール入力されたデータの中から最大値を見つけ出して表示します。
乱数の発生
C# の new Random() で「0~99」の乱数を発生させます。
配列
配列の基礎
C# で int 型の1次元配列を定義します。
配列の比較
C# で配列を比較します。
二次元配列を定義
C# で二次元配列を定義します。
配列のコピー
short 型の二次元配列を例に、コピーの説明です。
連想配列
C# で連想配列を使います。
dynamic にサイズを設定
C# で二次元配列のサイズを dynamic に設定します。
Object Class の配列
C# で Object Class の配列を使います。
ArrayList の基礎
C# の ArrayList で int 型のデータを登録します。
Object Class を登録
C# で ArrayList に Object Class(Struct) を登録します。
ArrayList にミックスで登録
C# の ArrayList に複数の型をミックスして登録します。
ListGeneric
C# の List ジェネリック・クラスで string を使います。
string
string⇔char[]
C# の string 型と char 型と char 配列の説明です。
Character Code
C# の Character Code(Unicode)を調べます。
Substring
Substring で文字列の一部を取り出します。
大文字/小文字を区別しないで比較します。
string ⇔ byte
str(C#の内部コード)を Shift_JIS に変換します。
Shift_JIS を str(C#の内部コード)に変換します。
カンマで区切られた数字を配列に変換
C# でカンマで区切られた数字の列を、int 型の配列に格納します。
カンマで区切られた文字列を文字列の配列に変換
C# でカンマで区切られた string を切り分けて string の配列に変換します。
配列 ⇔ string 相互に変換します。
文字列の検索と置換
string(文字列)の検索と置き換えです。
大文字/小文字を区別しないで検索します。
改行コードが邪魔になるとき、取り除きます。
文字列の反転
string(文字列)の反転と連続する文字を一個にまとめます。
Command Line 引数
Command Line から渡された引数を取得します。
Command Line の引数はストリング配列(string[])です。
メソッド(関数)
メソッド(method) の定義
C# でメソッド(メンバー関数) を定義して呼び出します。
共通領域
共通領域に Main とメソッド(関数)からアクセスします。
out パラメータを使う
C# のメソッドのパラメータとして out を使います。
Sort XYZ
ref(reference) パラメータを使って X,Y,Z をソートします。
配列を渡してソートする
C# のメソッド(method)にパラメータとして配列を渡してソートします。
再起関数
再起関数の基礎
C# の再起関数(recursive function) で GCM(最大公約数)を求めます。
「1~n」までの和を求める再起関数
C# の再起関数で「1~n」までの和を求めます。
再起関数から戻るときに処理する基本的な方法です。
再起関数でソート
C# で最大20件分のデータ領域(配列)を定義して、再起関数でソートします。
*で囲まれた中を塗りつぶす
*で囲まれた中を塗りつぶす「C# 再起関数」のプログラムです。
迷路探索のプログラム
*で囲まれた迷路を探索してゴールに到達する「C# 再起関数」のプログラムです。
順列組み合わせを表示
順列組み合わせを C# の再起関数で求めます。
ペグ・ソリティアを解く
C# の再起関数でペグ・ソリティアゲームの答えを見つけ出します。
C# File 入出力
TEXT File の入力
C# の StreamReader で TEXT File を入力して Console 画面に表示します。
TEXT File の出力
C# の StreamWriter でTEXT データを File に出力します。
BYTE DATA の出力
C# の FileStream でバイナリー形式のデータ(BYTE DATA)を File に出力します。
BYTE DATA の入力
C# の FileStream でバイナリー形式のデータ(BYTE DATA)を入力して編集して表示します。
binary DATA の出力
C# の FileStream で binary data を出力バイト長を指定して File に保存します。
binary DATA の入力
C# の FileStream で binary data を入力バイト長を指定して File から読み込みます。
ファイルをコピーする関数を作成します。
TEXT 形式でデータを出力
C# の StreamWriter で整数データを TEXT 形式に変換して File に出力します。
TEXT 形式のデータを入力
C# の StreamReader で TEXT 形式の整数データを入力します。
文字コードを指定して入力
文字コードの異なるファイルを入力します。
文字コードを指定して出力
文字コードの異なるファイルを作成します。
文字コードを調べて入力
ファイルの文字コードを調べて入力します。
ファイル操作
ファイルの「コピー, 削除, 名前変更, 移動, 存在確認」などを行います。
Folder Copy
C# でフォルダーを再起的にコピーします。
Folder Delete
C# でフォルダーを削除します。
C# Object Class
static メソッドを定義
C# でメインとは別の Class を作成して、static メソッドを定義します。
gcmlcm Class を定義
C# 言語で一般的な方法で gcmlcm Class を定義します。
☆Main() と gcmlcm Class のファイルを分けて格納してみます。
Partial を使う
Partial を宣言した Class は一つにまとめられます。
Sample Class
配列をパラメータとする Object Class のサンプルです。
☆C/C++ との違いを学んで下さい。
Class のデータに直接アクセス
C# で gcmlcm Class 内で定義されているデータ領域に直接アクセスします。
Set,Get アクセッサ
C# で Set アクセッサ, Get アクセッサを使って Class 内で定義されているデータ領域にアクセスします。
Parameter
関数に渡したパラメータの値を変更して、元のデータに及ぶ影響を調べます。
Static
Static 宣言と Object Class の関係です。
Class の継承
C# で GCM Class を継承して LCM Class を定義します。
メソッドのオーバーライド
C# で継承した Class のメソッドを override(オーバーライド)します。
Dispose で資源を解放
IDisposable を継承して、資源を解放します。
抽象クラスでジャンケンの判定
抽象クラスを使った、ジャンケンの勝ち負けを調べるクラスです。
struct(構造体)
XY座標構造体を定義
C# でXY座標構造体を定義します。
gcmlcm struct を定義
C# で gcmlcm Class に習って gcmlcm struct を定義します。
class と struct の違い
C# で class と struct の違いを検証します。
struct をパラメータで渡す
C# で struct をパラメータとして渡します。
構造体に初期値を設定
構造体に初期値を設定します。
構造体の入れ子
C# で構造体の中で構造体を使う「構造体の入れ子」です。
try(トライ)&catch(キャッチ)
try&catch
try(トライ)&catch(キャッチ)の説明です。
finally
try & catch & finally を使います。
throw
throw で例外を投げて、catch() で受け取ります。
List 連鎖
List 連鎖の基礎
C# で List 構造をプログラムします。
List を正順(逆順)で印字
連鎖した List構造を、正順(逆順)に印字します。
List のセルを削除する
List に登録されているセルを削除します。
List Object Class
C# で List Object Class を作成します。
ArrayList の連鎖
C# で ArrayList を連鎖するプログラムです。
Binary Tree
Binary Tree の基礎
C# で Binary Tree の Object Class を作成します。
Car, Cdr で連鎖
Binary Tree の Car と Cdr を使って連鎖します。
Binary Tree ソート
Binary Tree で昇順にソートして印字します。
Generics
generics の基礎
C# で generics(総称性)を使ったメソッドを定義します。
generics を使った加算メソッド
C# で generics(総称性)を使って加算メソッドを作成します。
generics を使った比較メソッド
C# で generics を使って比較メソッドを作成します。
generics を使った Class
C# で generics を使った Class のサンプルプログラムです。
generics を使って Stack を作成
C# で generics を使って Stack Class を作成します。
インターフェース
interface
interface(インターフェース)の説明です。
interface-2
複数のインターフェースを継承します。
スレッド
スレッドを起動
スレッドの説明と、基本プログラムです。
Thread NowTime Class
NowTime Class のメソッドを Thread で起動します。
スレッドの中断
スレッドの実行を中断します。
XML(ExtensibleMarkupLanguage)
XML Save&Load
XML ファイルの作成と入力の基礎です。
成績データ XML
成績データ XML(簡易データベース)の作成と利用方法です。
XHTML とは
XHTML は XML に準拠した HTML の後継仕様です。
Pointer
Pointer を使う
C# で unsafe の設定をして、int 型の Pointer を使います。
int型を byte型の Pointer に Cast
C# で byte型の Pointer で int型のデータに Cast して、メモリの内容を16進数でダンプします。
byte型の Pointer で char型を Cast
C# で byte型の Pointer で char型のデータに Cast して、メモリの内容を16進数でダンプします。
byte型の Pointer で文字を設定
C# で byte型の Pointer で char型のデータに Cast して、16進数で文字を設定します。
メソッドのパラメータとしてポインタを渡す
C# で メソッドのパラメータとして int型のポインタを渡して、値を設定して返します。
配列のポインタ
ポインタを使って配列にアクセスします。
TEXT の暗号化
TEXT(string) を暗号化して UTF-8 で書き出します。
TEXT の複合化
暗号化して書き出された UTF-8 のファイルを複合化します。
Delegate
Delegate の基礎
C# の デリゲート(委譲)の基礎です。
Delegate を渡す
C# で Delegate を引数として渡します。
メソッド名やクラス名を表示
Delegate で設定されたメソッド名やクラス名を表示します。
メソッドの追加と削除
移譲先リストに複数のメソッドを「追加/削除」します。
非同期で呼び出す
デリゲートを非同期で呼び出します。
Event
Event の基礎
C# のイベント(事象)呼び出しの基礎です。
複数のハンドラを割り当てる
C# で1個のイベントに複数のハンドラを割り当てます。
event 呼び出しでパラメータを渡す
C# でイベントを呼び出すときにパラメータを渡します。
Proxy
Proxy の基礎
C# のプロキシ(代理/委任)の基礎です。
複数メソッドを定義
プロキシで複数のメソッドを定義します。
DLL(Dynamic Link Library)
☆C/C++⇒C# DLL の記述があるページは、C/C++ から DLL を呼び出すページにリンクしています。
C# Hello DLL
"C# Hello DLL" を印字する Class を登録した DLL を作成します。
☆C/C++⇒C# DLL
C# GcmLcm.dll
GCM と LCM を計算する Class を登録した DLL を作成します。
☆C/C++⇒C# DLL
こよみ DLL
年月日を入力すると、曜日と経過日数を計算する Class を登録した DLL を提供します。
C#⇒C/C++ Hello.dll
C# から C/C++ でクラスを登録した Hello.dll を呼び出します。
C#⇒C++/GcmDLL
C# から C/C++ でクラスを登録した GclLcm.dll を呼び出します。
C#⇒DLL(HelloMsg)
C# から C/C++ で HelloMsg 関数を登録した DLL を呼び出します。
C#⇒DLL(GCM,LCM)
C# から C/C++ で GCM,LCM 関数を登録した DLL を呼び出します。
C#⇒DLL(CharMsg)
C# から C/C++ のポインター引数を持つ DLL の関数 CharMsg(wchar_t*) を呼び出します。
DLL Command
コマンドプロンプトから C# の DLL を作成します。
Math Library
AddClass と MultiplyClass を登録した C# の DLL を作成します。
Console の演習問題
ボーリングのブービー
5人のボーリングの成績からブービー(booby)の点数を表示します。
分数の計算
分数の加減算をして、結果を分数で表示します。
平方根の計算
平方根の計算には「ニュートン・ラプソン」の方法と言う有名な解法があります。
正多角形で円周率を計算
円に内接する正多角形を用いて円周率を計算します。
素因数に分解する
整数nを素因数に分解して表示します。
約数を洗い出す
整数nを割り切る全ての約数を洗い出して表示します。
素数の判定
コンソールから入力した値が、素数か合成数かを判定します。
素数の一覧を表示する
エラトステネスのふるいで 1000 以下の素数を求めて表示します。
偶数の魔方陣を作成する
4,8,16, ...などの偶数の魔方陣を作成します。
奇数の魔方陣を作成する
3,5,7, ...などの奇数の魔方陣を作成します。
年月日を入力して、曜日と経過日数を表示
C#の Console.ReadLine で年月日を入力して、曜日と経過日数を表示します。
2倍すると最後尾の数字が先頭に
ある長い数列があり、2倍すると最後尾の数字(8)が先頭に移動します。
自前で作成した C# の List Object Class を使って、元の数列を求めて表示して下さい。
C#で約4000桁の円周率を求めて表示してみましょう。
コンピュータの実行時間さえ許されるならば、ほんの少し修正するだけで10万桁ぐらいは計算できるかも知れません。 (^_^;
円周率の話と実行結果
データの形式
4000桁の値を表示
円周率を求める公式
Add メソッド
C# Windows Program
Form(Window)を表示
自動生成を使って Form を作成
C# の自動生成を使って Form(ウインドウ) を作成します。
Form を作成する
C# で空のプロジェクトから Form(Window) を表示します。
背景色とキャプションを設定
Window の背景色とキャプションの設定です。
カレンダーを表示する
C# の自動生成を使って、カレンダーを表示するプログラムを作成します。
内幕を知らなければ「すごい」と関心されることでしょう。
☆[デザイン]と[ツールボックス]の基本的な使い方です。
カレンダーを表示する
C# で空のプロジェクトから、カレンダーを表示するプログラムを作成します。
☆InitializeComponent() メソッドのソースコードが追加されます。
Form に描画
線を描画する
C# の自動生成を使って、線を描画します。
Line を描画する
空のプロジェクトから DrawLine で線を描画します。
図形を描画する
「線(DrawLine), 矩形(DrawRectangle), 楕円/円(DrawEllipse)」を描画します。
三角形を描画する
C# の DrawLine を繰り返して三角形を描画します。
オーバーライドを使います。
大きな文字を表示する
C# の自動生成を使って、ウインドウに大きな文字を表示します。
大きな文字を表示する
空のプロジェクトから、ウインドウに大きな文字を表示します。
Goban
図形を使って碁盤を表示します。
マウス
マウスのクリックを検出する
マウスのクリックを検出して MessageBox を表示します。
左クリック・右クリックの識別方法も説明します。
マウスのクリックで終了確認
マウスがクリックされると、終了確認の MessageBox を表示します。
☆一般的な終了確認の方法を紹介します。
Click Position
マウスがクリックされた座標をキャプションに表示します。
Beep 音を鳴らす
マウスのクリックで Beep 音を鳴らす。
マウスをキャプチャする
マウスをキャプチャして、移動中の座標を表示します。
キー
ESC キーで終了
ESC キーが押されるとプログラムを終了します。
キー操作で幅と高さを変更する
矢印キーでウインドウの幅と高さを変更します。
☆Console.WriteLine() で「出力ウインドウ」に印字します。
キー操作で画像を移動する
矢印キーで上下左右に画像を移動します。
矢印キーに加えて、Shift+(ADWX)でも操作出来るようにプログラムします。
画像を描画する IMAGE Class を使ってみました。
Image の描画
単純な画像の描画は キー操作で画像を移動する の class IMAGE を推奨します。
画像の切り分けは カードを描画 の class Card を推奨します。
画像ファイルを描画する
GIF 画像をファイルから直接入力して、C# の DrawImage で描画します。
Bitmap に画像をロードして、Bitmap から描画します。
リソースで取り込んだイメージを描画する
C# で GIF 画像をリソースとして取り込んで、DrawImage で描画します。
Sprite を切り出す
大きな画像から Sprite を切り出して描画します。
Sprite を切り替える
マウスのクリックで Sprite を切り替えます。
画像を切り分ける
Bitmap の Graphics を取得して画像を切り分けます。
画像描画 etc
画像を「拡大縮小・反転・回転・平行四辺形の変形」などで描画します。
専用 icon を設定
Window(Form)に専用の icon を設定します。
ImageList の基礎
Image List に画像を登録します。
クリックで切り替える
Dog1.bmp ~ Dog5.bmp をマウスのクリックで画像を切り替えます。
画像を分割して登録
16枚の画像を切り分けて Imagelist に登録します。
美人のアニメーション
画像を切り分けてタイマー設定でアニメーションします。
Windows Tool の使い方
Button
ボタンを貼り付ける
自動生成のプロジェクトで ToolBox からボタンを貼り付けます。
☆イベント(稲妻アイコン)の基本的な使い方です。
ToolBox からボタンを貼り付ける
空から作成したプロジェクトで ToolBox からボタンを貼り付けます。
直接ボタンを貼り付ける
ツールボックスを使わないで、直接 Form にボタンを貼り付けます。
Text Box
TextBox
C# の自動生成を使って TextBox, Label, Button を貼り付けます。
TextBox と Button を貼り付ける
空のプロジェクトで ToolBox からボタンとテキストボックスを貼り付けます。
直接 TextBox と Button を貼り付ける
ツールボックスを使わないで、直接 TextBox と Button を貼り付けます。
16進数+文字で TextBox に表示する
string で定義した文字列を16進数+文字で TextBox に表示します。
画像ファイルの名前を TextBox から入力
Button をクリックすると TextBox で指定した画像ファイルを描画します。
Rich Text Box
RichTextBox
C# の自動生成を使って RichTextBox を貼り付けます。
Rich Font
RichTextBox にフォントを設定します。
RichTextBox
空から作成したプロジェクトに RichTextBox を貼り付けます。
KeyWord を検索して、色やフォントを設定します。
RichSaveLoad
RichTextBox の状態を Save, Load します。
Text File
RichTextBox にファイルからテキストデータを入力/保存します。
Replace
RichTextBox に文字列を挿入します。
RichTextBox で、文字の置換です。
RichTextBox で、文字列の置換です。
Delete
RichTextBox から文字列を削除します。
RichTextBox から行を削除します。
Rich Contex
RichTextBox に Contex Menu を設定します。
☆Text Editor に必要なメソッドを抜粋します。
Rich KeyDown
RichTextBox で Function キーを使います。
Function キーで Keyword の選択と検索を行います。
Key Search
RichTextBox を KeyWord で検索します。
RichTextBox のダブルクリックでメソッドを呼び出します。
Form Size
ウインドウサイズの拡大/縮小に対応します。
Picture Box
PictureBox に画像を描画
ウインドウに PictureBox を貼り付けて画像を描画します。
PictureBox の画像を切り替える
ToolBox を使わずに PictureBox と Button を貼り付けて、二枚の画像を切り替えます。
PictureBox の画像の上から図形を描く
ToolBox を使わずに PictureBox を貼り付けて、PaintHandler で画像の上から図形を描きます。
MyHandler() で PictureBox に図形を描く
ウインドウに PictureBox を貼り付けて、MyHandler() で図形を描きます。
MyHandler() で PictureBox に Text を表示
ウインドウに PictureBox を貼り付けて、MyHandler() で Text を表示します。
button の背景に画像を描く
Button の背景に画像を描きます。
Common Dialog
Open File Dialog
自動生成で Open File Dialog からファイルを選択します。
Color Dialog
自動生成で ColorDialog から TextBox の背景色を選択します。
Open File Dialog
空のプロジェクトから Open File Dialog を組み込みます。
Save File Dialog
空のプロジェクトから Save File Dialog を組み込みます。
Folder Browser Dialog
FolderBrowserDialog で Folder を選択します。
Font Dialog
FontDialog から選択したフォントと色で表示します。
Color Dialog
ColorDialog から TextBox の背景色を選択します。
メニューの設定
ToolBox からメニューを貼り付ける
ToolBox からメニューを貼り付けます。
メニューを設定する
ToolBox を使わずにプログラムの終了とバージョン情報のメニューを設定します。
画像ファイルを選択
画像ファイルを選択して描画するメニューを設定します。
☆Single Thread Apartment(STA)モードに設定します。
メニューにアイコンを設定
メニューバーに Icon を設定します。
ToolStrip(ToolBar)を設定する
クリック一発で起動する ToolStrip(ToolBar)を設定します。
ToolStripContainer を設定する
ToolStrip をウインドウの左右上下に移動出来るようになります。
ContextMenu を設定する
マウスの右クリックで起動するメニューを設定します。
Timer
タイマ割り込みでカウントする
自動生成のプロジェクトで Timer 割り込みでカウントします。
タイマ割り込みでカウントする
空のプロジェクトから Timer を貼り付けてカウントします。
直接 Timer を貼り付ける
ツールボックスを使わないで、直接 Timer を貼り付けます。
List Box & List View
ListBox に登録する
C# で String で定義したアイテムを ListBox に登録します。
ListBox に TEXT を表示する
ソースファイルを入力して ListBox に表示します。
選択された行を取得する
SelectedIndexChanged プロパティで選択された行を取得します。
ListBox Directory
C# で Directory を検索して、ファイル一覧を ListBox に表示します。
ListView に登録する
C# で ListView にアイテムを登録します。
アイテム名の変更
C# で ListView に登録したアイテムの名前を変更します。
ListView Icon
ListView にアイコンを設定します。
ListView に Column を設定する
ListView に Column を設定します。
表示の切り替え
ListView の表示形式を切り替えます。
ListView Item 選択
ListView から Item を選択して MessageBox に表示します。
シングル/ダブルの検出方法も説明します。
ListView Directory
Directory を検索して「"名前", "更新日付", "サイズ"」を表示します。
ListView Directory Icon
C# で Directory を検索してアイコンを付けて表示します。
ListView Sort
ListView のカラムクリックでアイテムをソートします。
Tree View
TreeView に登録する
C# で TreeView にノードを登録します。
TreeView に階層で登録
C# で TreeView にノードを階層構造で登録します。
TreeView に登録したノードを削除します。
レベル指定の Data を TreeView に登録
string で定義したレベル指定の Data を TreeView に登録します。
Struct を TreeView に登録
string で定義した構造体 を TreeView に登録します。
★原因不明の現象です。
TreeView Click
C# で TreeView のノードを右クリックすると MessageBox を表示します。
TreeView 親ノード
TreeView でクリックされたノードの親を調べます。
Command Line からコンパイル出来る形式で掲載します。
子・孫を再起でトレース
TreeView でクリックされたノードの子・孫を再起でトレースします。
Drive Icon
C# でドライブを検索して TreeView に登録します。
Expand
TreeView のドライブをクリックするとノードを展開します。
Radio Button
Radio Button
Radio Button の説明です。
Radio Button & GroupBox
Radio Button を GroupBox で囲みます。
Tab Control
TabControl
C# の自動生成を使って TabControl を貼り付けます。
TabPage 番号を表示
TabPage のクリックで RichTextBox にページ番号を表示します。
Split
SplitContainer
C# の SplitContainer でウインドウを分割します。
FolderView
C# で TreeView と ListView を並べてフォルダを表示します。
Handler
C# で作成した File Handler の原型です。
C# CLI Project
CLI の Project は *.cs ファイル一本で動きます。
CLI Console Mode
CLI Guid
Command Line から CLI Mode のプログラムをコンパイルして実行します。
コンソールから入力する
CLI で ReadLine を使って TEXT を入力します。
配列の基礎
CLI で int 型の1次元配列を定義します。
二次元配列
CLI で2次元配列を定義します。
関数を定義
CLI でメソッド(メンバー関数) を定義して呼び出します。
Sort XYZ
ref パラメータで「X,Y,Z」を昇順に並べます。
Text 入出力
CLI で Text Data の入力と出力をします。
ArrayList を使った二次元配列
ArrayList を使って、二次元の String 配列を定義します。
ArrayList の配列
ArrayList の配列(配列の要素が ArrayList)を使います。
gcm Class を定義
C# 言語で一般的な gcm Class を定義します。
Class ファイルを分ける
Main() メソッドと Object Class のファイルを分けます。
曜日と日数の計算
事件が発生した日付をタイプして、曜日と本日までの経過日数を計算します。
CLI Windows Mode
Windows を表示
Command Line から Windows プログラムを実行します。
背景色とキャプションを設定
CLI のプロジェクトで背景色とキャプションを設定します。
専用アイコンを設定
プログラムを起動すると、専用のアイコンがフォームの左上に表示されます。
マウスのクリック座標を印字
マウスの左/右クリックを検出して、座標を印字します。
Line を描画する
DrawLine で線を描画します。
三角形を描画する
DrawLine を繰り返して三角形を描画します。
大きな文字を表示する
ウインドウに大きな文字を表示します。
画像ファイルを描画する
BMP 画像をファイルから直接入力して DrawImage で描画します。
画像ファイルを選択
画像ファイルを選択して描画するメニューを設定します。
Sprite を切り替える
マウスのクリックで Sprite を切り替えます。
TextBox と Button を貼り付ける
ボタンをクリックするとメッセージを取得して表示します。
Ritch Text Box
CLI で Ritch Text Box を貼り付けます。
RitchText ContexMenu
CLI で Ritch Text Box に右クリックメニューを設定します。
タイマー割り込み
タイマー割り込みでカウンターを表示します。
Counter Class
カウンタークラスで、数字の画像を切り分けてカウンターを表示します。
CLI Windows で「じゃんけんゲーム」を作成する。
画像の確認
「じゃんけんゲーム」で使用する画像を確認します。
グー・チョキ・パーを選択
ラジオボタンで「グー・チョキ・パー」を選択します。
得点を計算
得点を計算して TextBox に印字します。
コンピュータは乱数で手を決めます。
じゃんけんゲームの完成
コンピュータの思考関数を作成してゲームの完成です。
じゃんけん Class
じゃんけんゲームに白番のクラスファイル(W_Sumaho.cs) を組み込みます。
じゃんけんバトルゲーム
プログラム同士が対戦する「じゃんけんバトルゲーム」を作成します。
C# Program Note
C# Multi Windows
MessageBox
MessageBox を表示する
Console Mode で「MessageBox を使って終了確認」を行います。
int 型を MessageBox に表示する
Console Mode で int 型を文字列に変換して MessageBox に表示します。
Form2
Form-2
C# で新しいフォーム(Form2)を追加します。
Multi Window Animetion
Button をクリックすると、次々とアニメーションウインドウが開きます。
Form Size(Max & Min)
Button のクリックで、アニメページに切り替えます。
Page Navigate
Button のクリックで、ページからページに Navigate します。
DialogBox
DialogBox
C# で DialogBox を表示します。
DialogText
DialogBox からタイプした文字列を取得します。
ModeLess Dialog
ModeLess Dialog の基礎です。
Windows Thread
Thread Count
Thread で起動したタスクでカウントします。
Thread Class
Class で Thread のメソッドを定義します。
Thread Join
Thread を配列で定義して、終了を待ち合せます。
アニメーション&Thread
アニメーションしながら Thread で時刻を取得します。
Thread Animation
Thread でアニメーションします。
Sound
WAVE を演奏
SoundPlayer で WAVE を演奏します。
MIDI を演奏
MCI(Media Control Interface)で MIDI を演奏します。
MP3 を演奏
MediaPlayer で MP3 を演奏します。
C# Network Program
Web ページをダウンロード
C# で URL に接続して Web ページを TEXT 形式でダウンロードします。
Web ページを TEXT 形式で表示
C# で URL に接続して Web ページを TEXT 形式で TextBox に表示します。
FTP UP_Load
FTP を使って Web Page を UP_Load します。
Server と Client で通信
C# で TCP(Transmission Control Protocol) Server に Client から接続します。
現在時刻を知らせる
C# で Server を常駐させて、現在時刻を Client に知らせます。
タイマ割り込みで、接続要求をセンスする
C# でタイマ割り込みを使って Client からの接続要求をセンスします。
スレッドで Message を取得する
アニメーションしながらスレッドで Message を取得します。
IPアドレスを指定して送信/受信
IPアドレスを指定してメッセージを相互に送信/受信します。
スレッドでメッセージを受信
スレッドを使ったメッセージの受信と、IPアドレスを指定したメッセージの送信です。
C# その他
Command Line
Command Line で指定されたパラメータを受け取ります。
アプリケーションを起動する
C# から他のアプリケーションを起動します。
ファイルを関連付けられたアプリケーションから開きます。
ホームページを開く
ボタンのクリックで URL を参照してホームページを開きます。
Clipboard Text
C# で Clipboard を使って、文字列を Copy&Paste します。
Clipboard Image
C# で Clipboard を使って、イメージを Copy&Paste します。
Clipboard Files
C# で Clipboard を使って、ファイルリストを Copy&Paste します。
Windows Explorer と相互に Copy&Paste することが出来ます。
Clip Text&Image
Clipboard に文字列とイメージを一緒に格納します。
Drag&Drop
ListBox を使った Drag&Drop の基礎です。
Drag&Drop View
ListView には Drag&Drop 専用の機能が備わっています。
エクスプローラと Drag&Drop
Windows Explorer と Drag&Drop します。
「ちらつき」を無くす-1
画像を切り替えてアニメーションしたときの、チラツキを無くす方法です。
「ちらつき」を無くす-2
画像を切り替えてアニメーションしたときの、チラツキを無くす方法です。
Double Buffer で描画する
Double Buffer を使って「ちらつき」を無くしてアニメーションします。
Special Folder
Windows の特殊フォルダーを調べます。
Draw で書いたイメージをファイルに出力
BMP 画像領域にカラーで文字を書き、gif 形式でファイルに書き出します。
Form(ウインドウ) を直接生成する
Form Object Class を直接生成してウインドウを表示します。
Main() のクラスに Form を継承する
Main() メソッドが定義されているクラスに Form を継承してウインドウを表示します。
Form を継承した Class を使う
Form を継承した新しい Class を使ってウインドウを表示します。
C# Game Program 入門
三山くずしゲーム
石の画像を描画
ゲームに使う石の画像を描画します。
クリック座標
マウスがクリックされた座標から、山と石を計算します。
Alpha 版
三山くずしゲームの Alpha 版です。
カードゲームに挑戦
カードを描画
格子状にカードを並べた画像から Sprite を切り分けて描画します。
カードをシャッフル
カードをシャッフルして、並べて描画します。
カードを反転
カードを重ねたり、反転して描画します。
シューティングゲームに挑戦
キーをセンス
リアルタイムにキーをセンスして画像を動かします。
背景のスクロール
ゲームの背景画像をスクロールします。
弾丸を発射
Space キーで弾丸を発射します。
弾丸を一括管理
シューティングゲームで飛び交う弾丸を一括管理します。
アニメーションクラス
高精度タイマでアニメーションを行うクラスを作成します。
敵に向かって連射
弾丸を敵に向かって連射します。
ナンプレ(数属)ゲーム
ナンプレ・ガイド
Numberplace(ナンバープレイス)ゲームガイドです。
GamePlay
レベル(好み)に合わせてゲームをプレイします。
Image
ナンバープレイスで使用する Image 描画の基本です。
Layout
メニューを設定してゲーム画面を描画します。
Menu
NewGame メニューを実装して、プレイが出来るようにします。
Alpha 版
残りのメニューを実装して、α版の完成です。
Alpha 版の実行
α版をダウンロードして実行します。
Numberplace
Numberplace(ナンバープレイス)の完成です。
世界一数独
世界一難しい数独の問題を解きます。
オセロゲーム
挟んだ駒を裏返す
マウスで「黒,白」の駒を置いて、挟んだ駒を裏返します。
プラットホーム
オセロゲームのプラットホームの完成です。
Final 関数
最も面白い Final 関数のテストです。
コンピュータがプレイする
コンピュータがプレイする関数を追加します。
Base Project
AIを組み込む前のベースプロジェクトです。
Learnning
コンピュータ同士で対戦した結果の学習準備です。
Osero Game
AIを組み込んだオセロゲームです。
囲碁ソフト作成
碁盤に石を置く
碁盤を表示して、石を置きます。
クリックで石を置く
マウスのクリックで石を置きます。
打ち上げと禁じ手
石の打ち上げと禁じ手の判定です。
SGF ファイルを入力
SGF ファイルを入力して、出題図を表示します。
棋譜ツリー
SGF ファイルの棋譜ツリーと CELL 構造体の説明です。
棋譜の再生
SGF ファイルを入力して棋譜を再生します。
棋譜の保存
ツリー構造に展開した棋譜を SGF ファイルに保存します。
棋譜の入力
マウスのクリックで棋譜を入力します。
分岐の入力
分岐手順を入力します。
RadioButton
主要な操作は RadioButton で制御します。
Version 4
SGF Version 4(FF[4]) に対応します。
LB tag をプログラム
SGF Version 4 に対応して LB tag をプログラムします。
SGF Header
SGF Header の編集をサポートします。
三目並べゲーム
ゲームの手を記録
Cell を連鎖して三目並べゲームの手を記録します。
三目並べの学習機能
C# で ArrayList を使って三目並べゲームを学習します。
三目並べの自動学習
ArrayList を使って三目並べゲームの手を自動的に学習します。
三目並べゲーム
Windows Mode で三目並べゲームを作成します。
三目並べゲーム-2
ディープラーニングを使った三目並べゲームです。
三目並べゲーム-3
ディープラーニングと常識的な手を打つ関数を組み合わせます。
C# Application Program
Screen Capture
Screen Capture
Screen を Capture して画像ファイル(gif 形式)で保存します。
Text Editor の基礎
Text Editor の基礎
C# で作成する Text Editor の基礎です。
メニューをプログラム
Text Editor のメニューをプログラムします。
XML に保存
Editor の設定情報を XML に Save, Load します。
Command Line
Command Line からファイル名を受け取ります。
Text Editor を開発
Text Editor の開発
C# で実用的な Text Editor を開発します。
ファイル入出力
メニューの設定とファイルの入出力です。
Contex Menu
Contex Menu を設定して編集メニューをコーディングします。
XML に保存
Editor の設定情報をXML に保存します。
検索機能
「Search/Replace」メニューを設定します。
Single File Editor
キー操作を設定して Single File Editor の完成です。
TabPage Change
複数ファイルをオープンして Tab Page で切り替えます。
FileClass
FileClass を MultiEditor に対応して再編集します。
Multi File Editor
ファイル比較を設定します。
Binary Viewer
Binary Viewer のレイアウト
Binary Viewer のウインドウをレイアウトします。
TextBox に16進+文字で表示する
このプログラムを自身を入力して TextBox に16進+文字で表示します。
メニューを処理する
メニューを処理するイベントハンドラを作成します。
Edit Object Class
Edit Object Class を使った Binary Viewer です。
utf-16, utf-8
utf-16, utf-8, Shift_JIS に対応します。
Binary Editor
utf-16, utf-8, Shift_JIS に対応します。
Binary Editor のメニューを設定
Binary Viewer をベースに Binary Editor を作成します。
入出力と描画の制御
ブロックの入出力と描画の制御を行います。
ページを修正する
「修正(&U)メニュー」を実装します。
ベータ版の完成です
Binary Editor ベータ版の完成です。
File Handler
File Handler
File Handler の原型プロジェクトを作成します。
Layout
File Handler のレイアウトを整えます。
Handler Menu
File Handler に Menu を設定します。
Windows Explorer を起動してファイルを貼り付けることが出来ます。
コピーを実装
File Handler にコピー機能と削除機能を実装します。
Windows Explorer と相互に Copy&Paste することが出来ます。
表示メニューを実装
特殊フォルダや ListView の「表示切り替えメニュー」を実装します。
Private Menu
Contex Menu にプライベートメニューを追加します。
ListView の名前変更(フォルダ名やファイル名の変更)を実装します。
File Handler Version 1.0
ListView のカラムをクリックすると昇順/降順に並べ替えます。
一応これで Version 1.0 の完成です。
Memo Application
Memo Guide
Memo2 アプリケーションのガイドです。
Memo Read File
Memo のデーターファイルを入力して ArrayList に格納します。
Layout
ツールボックスから Tool を貼り付けて Layout を整えます。
Memo Tree View
Memo アプリのデーターファイルを Tree View に登録します。
RichTextBox
TreeView で選択された node の Text Data を RichTextBox に表示します。
Menu を登録
Memo2 のメニューを登録します。
編集メニューを実装
RichTextBox を編集する Edit Menu を実装します。
Tree Menu を実装
TreeView を操作する Tree Menu を実装します。
File Menu を実装
ファイルを操作する File Menu を実装します。
Search Menu を実装
TEXT を検索する Search Menu を実装します。
ToolStrip を実装
ToolStrip に Menu を実装します。
Function Key に Text 編集を実装します。
RichTextBox でダブルクリックを検出します。
User Menu を実装
フォントやパスワードを設定する User Menu を実装します。
Memo2 α版
Memo2 α版を作成します。
Memo2 β版
Memo2 β版を作成します。
Dialog Input
Dialog Box から Text(検索キー, 置換文字列) を入力します。
画像認識
画像認識 C# API
Image Guid
C#で画像解析を行うために必要な知識です。
Face Image Size
顔の画像をサイズを整えて保存します。
Color ⇒ Grayscale
カラー画像をグレースケールに変換します。
Color ⇒ 二値画像
カラー画像を二値画像に変換します。
Delete Color
カラー画像から選択された色(背景色など)を削除します。
Select Color
カラー画像から選択された色を抽出します。
Color ⇒ エッジ画像
ピクセルの濃淡の違いを検出して、エッジ画像を作成します。
Line をピックアップ
エッジを検出して作成した二値画像から Line をピックアップします。
画像認識 Win32 API
BitBlt
Win32 API の BitBlt() 関数を使って描画します。
GetDIBits
Win32 API の GetDIBits でピクセルデータを取得します。
Win32 3原色
Win32 API を使って、3原色を個々に設定して描画します。
W32 Color ⇒ Gray
Win32 API を使ってグレースケールに変換します。
W32 Color ⇒ 二値画像
Win32 API を使って二値画像に変換します。
画像のエッジを検出
Win32 API で、ピクセルの濃淡の違いを検出してエッジ画像を作成します。
Mark Rect
Win32 API で、顔の画像に Land Mark を検出する矩形を重ねます。
Land Mark
Win32 API で、検索範囲を矩形で設定して Land Mark を検出します。
顔画像の識別
Win32 API で、Land Mark を使って顔の画像を識別します。
Face
Store App(UWP) で静止画から顔を見つけます。
C#ページ検索抜粋
超初心者のプログラム入門(C#)
超初心者のプログラム入門(C/C++)