プログラミング初心者です。Visual Studioを用いてフォームを作り、C#でコードを組むことになりました。フォームは単純で、3つのボタンがあるだけです。ボタンは1度しか押せなくしてあります。
(その1)任意のボタンを押すとメッセージボックス"A"が現れ、次に残りの2つのうちどれかを押すと新たにメッセージ"B"が、最後のひとつではメッセージ"C"が表示されるようにしたいです。
(その2)応用としてボタンの数を100個に増やし、任意のボタンを1つ押すごとにA→B→C→A→B→Cとメッセージボックスの表示がループして切り替わるようにもしたいです。
ボタン1を押した時にAが、2を押すとBが表示されるという単純なコードなら分かるのですが、上記のような複雑な場合が入門サイトを見てもわかりません。メソッドの名前だけでも良いので、ヒントを教えて下さい。
No.2ベストアンサー
- 回答日時:
その1
フォーム作成時イベントで変数を0に初期化し、ボタンを押すごとに、その変数をインクリメントすると良い。
ボタンを押すイベント処理は、全部のボタンで共通にして(どのボタンを押しても同じイベントに飛ぶようにして)、以下のようにします。
フォーム作成時イベント
hensu = 0;
ボタンクリック時イベント
switch (hensu++) {
case 0:
メッセージボックスAの表示;
hensu++;
break;
case 1:
メッセージボックスBの表示;
hensu++;
break;
case 2:
メッセージボックスCの表示;
hensu++;
break;
case 3:
break; //メッセージボックスCの表示が済んでるので何もしない。
}
押されたボタン自身(sender)を押せないようにする;
その2
フォーム作成時イベントで変数を0に初期化し、ボタンを押すごとに、その変数をインクリメントすると良い。そして、2になったら0に戻す、とすれば良い。
ボタンを押すイベント処理は、全部のボタンで共通にして(どのボタンを押しても同じイベントに飛ぶようにして)、以下のようにします。
フォーム作成時イベント
hensu = 0;
ボタンクリック時イベント
switch (hensu) {
case 0:
メッセージボックスAの表示;
hensu++;
break;
case 1:
メッセージボックスBの表示;
hensu++;
break;
case 2:
メッセージボックスCの表示;
hensu = 0;
break;
}
押されたボタン自身(sender)を押せないようにする;
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- コーヒーメーカー・電気ケトル・電気ポット パルスオキシメーターの故障でしょうか? 自宅に帰りパルスオキシメーターの表示が消えて たので電源ボタ 2 2022/08/21 02:14
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- JavaScript jsで診断コンテンツのページ内切り替えについて 1 2023/04/14 17:31
- Visual Basic(VBA) visual basic初心者です。 visual studioで電卓を作成しています。 実行時にテ 1 2023/02/08 00:18
- Visual Basic(VBA) VBAで早押しゲームを作りたい 4 2022/05/12 13:46
- gooブログ Twitterの動画画面をgooブログに埋め込めない 4 2022/06/03 16:40
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- Excel(エクセル) マクロでボタンにつける名前がどこに設定されているかわからないケースがありました。 1 2023/06/19 19:37
- Word(ワード) Word のマクロについての質問です。 ボタンを押すと登録したブックマーク先にジャンプする機能(リン 3 2023/08/16 12:17
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
ボタンをマウスで押し続けたと...
-
フォームの再読み込み
-
VBA CommandButtonの文字ずれ
-
ユーザーフォームに別シートか...
-
ボタンを押すごとに違ったメッ...
-
Excel マクロ 閉じるボタン
-
エクセルVBAでユーザーフォーム...
-
他のアプリケーションとの連携
-
ボタンの増殖
-
ボタンの状態
-
アクセスのフォームで入力日を...
-
リストボックス 何も洗濯され...
-
コマンドボタンやイメージにマ...
-
C♯初心者で、四則演算の電卓を...
-
Excel VBA Application.caller...
-
Excel VBA オプションボタンに...
-
vb.net タイマーに引数を渡す
-
VBで電話プログラム作成
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
フォームの再読み込み
-
VBA CommandButtonの文字ずれ
-
ユーザーフォームに別シートか...
-
VBAのボタンの位置が変わって困...
-
Access VBA でデータペーストを...
-
Excel VBA Application.caller...
-
セルをマクロのボタンにしたい。
-
コマンドボタンやイメージにマ...
-
ボタン
-
プロシージャからイベントをコ...
-
ボタンをマウスで押し続けたと...
-
VBA でのボタンの移動について
-
C#で動的に作ったtextboxを消す。
-
バックスペース機能の作り方
-
VBAで多数のプログラムを一つの...
-
アイコンとボタンの違い
-
TextBoxでEnterキーを押すと、...
-
VBA IE ダウンロード ダイアロ...
おすすめ情報