回答編集履歴

3

回答を追記

2019/06/06 00:33

投稿

y_waiwai
y_waiwai

スコア87749

test CHANGED
@@ -67,3 +67,7 @@
67
67
 
68
68
 
69
69
  ```
70
+
71
+
72
+
73
+ んで、フォームの☓をどうにかしたいなら、FormClosingイベントを処理すればいいです

2

回答に追記

2019/06/06 00:32

投稿

y_waiwai
y_waiwai

スコア87749

test CHANGED
@@ -11,3 +11,59 @@
11
11
 
12
12
 
13
13
  +=というのはイベントを追加するだけです。
14
+
15
+
16
+
17
+ ---
18
+
19
+ イベントが残る、んじゃなくて、メッセージがメッセージキューに溜まってるだけなんで、
20
+
21
+ フラグを解除する前にメッセージキューを処理してしまいましょう
22
+
23
+
24
+
25
+ ```C#
26
+
27
+ bool flg;
28
+
29
+
30
+
31
+ private void button3_Click(object sender, EventArgs e)
32
+
33
+ {
34
+
35
+ if (flg) return;
36
+
37
+
38
+
39
+ flg = true; // try finally するほうがいいでしょうな
40
+
41
+ Debug.WriteLine("button3");
42
+
43
+ Thread.Sleep(2000);
44
+
45
+ Application.DoEvents(); // メッセージキューを処理
46
+
47
+ flg = false;
48
+
49
+ }
50
+
51
+
52
+
53
+ private void button4_Click(object sender, EventArgs e)
54
+
55
+ {
56
+
57
+ if (flg) return;
58
+
59
+
60
+
61
+ Debug.WriteLine("button4");
62
+
63
+ Thread.Sleep(2000);
64
+
65
+ }
66
+
67
+
68
+
69
+ ```

1

回答に追記

2019/06/06 00:27

投稿

y_waiwai
y_waiwai

スコア87749

test CHANGED
@@ -1,3 +1,13 @@
1
1
  そのコードを提示しましょう
2
2
 
3
3
  Aを押されてたらBをパスするという処理を書けば、動くことはありません。
4
+
5
+
6
+
7
+ ---
8
+
9
+ > this.button1.Click += new System.EventHandler(this.button1_Click);
10
+
11
+
12
+
13
+ +=というのはイベントを追加するだけです。