課題1 逃げるオシリのアルゴリズム(画面設定) ( No.3 ) |
- 日時: 2022/03/27 12:19
- 名前: REDCHEEKS
- >>2 の続き
次に、プロジェクトの内部を見て、設定していきます。
http://mediasp.kir.jp/img20220326/imgloglog-box/img20201230020321.jpg @「Form1」が選択されているのを確認し、 A スクロールさせて下の方にある「Text」を見つけ、その右横に「逃げるオシリのアルゴリズム」と入力します。 B Aを入力しキーボードの「Enter」を押下することで、ウインドウのタイトルに反映されます。 C 次に「ツールボックス」をクリックします。
http://mediasp.kir.jp/img20220326/imgloglog-box/img20201230020350.jpg @ ピンのマークをクリックし、図の通りピンが立った状態にします。 A「コモン コントロール」をクリックし、一覧表示を開きます。 B「Button」をドラッグして「逃げるオシリのアルゴリズム」の画面上にコピーします。 C「ListBox」をドラッグして「逃げるオシリのアルゴリズム」の画面上にコピーします。
http://mediasp.kir.jp/img20220326/imgloglog-box/img20201230020442.jpg @「ListBox1」をクリックして選択します。 A「ListBox1」の右下をドラッグして拡大します。 B「Button1」をクリックして選択します。 C「Button1」の右をドラッグして拡大します。
http://mediasp.kir.jp/img20220326/imgloglog-box/img20201230020514.jpg @「Button1」をクリックして選択します。 A「Button1」が選択されているのを確認し、 B「Text」の右側に「お仕置き開始」と入力します。 C「Button1」をダブルクリックします。⇒ プログラム入力画面に切り替わります。
|
課題1 逃げるオシリのアルゴリズム(プログラム入力) ( No.4 ) |
- 日時: 2022/03/27 12:19
- 名前: REDCHEEKS
- >>3 の続き
http://mediasp.kir.jp/img20220326/imgloglog-box/img20201230020551.jpg @「button1_Click」の下の { と } の間に、プログラムを手入力するか、または >>5 からコピペします。 A「button1_Click」の下の } の外側に、プログラムを手入力するか、または >>6 からコピペします。
http://mediasp.kir.jp/img20220326/imgloglog-box/img20201230020633.jpg @ これが上のAで入力(またはコピペ)した「お仕置き処理」プログラムです。
http://mediasp.kir.jp/img20220326/imgloglog-box/img20201230020709.jpg @ さらにライブラリを入力(または >>7 からコピペ)します。 A「開始」ボタンをクリックします。
以下は、プログラムの動作です。
http://mediasp.kir.jp/img20220326/imgloglog-box/img20201230020734.jpg @「お仕置き開始」ボタンをクリックします。 A お仕置き宣言が表示されるので「尻を突き出す」ボタンをクリックします。 B お仕置きが始まるので、お仕置きが終わらないうちに「尻を引っ込める」ボタンをクリックします。 C お叱りメッセージが表示されるので、再度「尻を突き出す」ボタンをクリックします。
http://spankingart.org/wiki/File:Dc27.jpg
|
課題1 コピペ用(ボタンの切り替え) ( No.5 ) |
- 日時: 2020/12/30 21:32
- 名前: REDCHEEKS
- // ボタンの切り替え
if (button1.Text == "尻を突き出す") { button1.Text = "尻を引っ込める"; } else if (button1.Text == "尻を引っ込める") { button1.Text = "尻を突き出す"; } else // お仕置き処理 { listBox1.Items.Clear(); button1.Text = "尻を突き出す"; Osioki(); button1.Text = "お仕置き開始"; }
|
課題1 コピペ用(お仕置き処理) ( No.6 ) |
- 日時: 2021/01/07 18:23
- 名前: REDCHEEKS
- /// <summary>
/// お仕置き処理 /// </summary> private void Osioki() { int n = 12; // 残りの回数 int escapeCount = 0; // 逃げた回数 int escapeTime = 0; // 逃げている時間(秒)
Say("これから罰としてオシリを" + n + "回叩きます。 パンツ下ろして、オシリ出しなさい。");
while (!CanSpank()) // お尻が突き出されるまで待つ { WaitSec(); // 1秒待つ } Say("始めます、歯を食いしばれ!");
while (n > 0) // 残り回数が 0 よりも大きければ繰り返す { WaitSec(); // 1秒待つ
if (CanSpank()) // お尻が突き出されている場合 { Spank(); // オシリをぶつ
n--; // 残りの回数を -1 する } else // 引っ込めている場合 { /*************************************************** * ★逃げるオシリのアルゴリズム * * * * ↓ここにプログラムを追加 * * 逃げた回数(escapeCount)によるお叱り・処罰 * * 逃げている時間(escapeTime)によるお叱り・処罰 * ***************************************************/
// (↓お叱りの例) Say("逃げてはいけません、あと" + n + "回残っています、ちゃんとオシリを突き出しなさい。");
while (!CanSpank()) // お尻が突き出されるまで待つ { WaitSec(); // 1秒待つ } Say("始めます、うんと痛くします、辛抱しなさい!"); } } Say("部屋の隅でオシリを出したまま立ってなさい。"); // コーナータイム }
|
課題1 コピペ用(ライブラリ) ( No.7 ) |
- 日時: 2020/12/30 21:33
- 名前: REDCHEEKS
- private int _spankSC = 0;
private bool CanSpank() { return button1.Text == "尻を引っ込める"; } private void Spank() { _spankSC %= 5; if(_spankSC == 0) { Say("パアン、"); } else { SayAdd("パアン、"); } _spankSC++; } private void Say(string msg) { _spankSC = 0; listBox1.Items.Add(msg); } private void SayAdd(string msg) { var cnt = listBox1.Items.Count; if(cnt > 0) { listBox1.Items[cnt - 1] += msg; } } private void WaitSec() { for (int t = 0; t < 4; t++) { System.Threading.Thread.Sleep(250); Application.DoEvents(); } }
|