回答編集履歴

1

見直しキャンペーン中

2023/07/27 16:31

投稿

TN8001
TN8001

スコア9758

test CHANGED
@@ -1,135 +1,68 @@
1
1
  コードを提示する場合は、できるだけコンパイルが通る形でお願いしたいです。
2
2
 
3
-
4
-
5
3
  * `frmStart.Show()` どっかで作った`frmStart`クラスのインスタンス?それともstaticメソッド??
6
-
7
4
  * `var timer`の行のようにメソッド外に処理が書いてある
8
-
9
5
  * `This.close()`って何?
10
-
11
-
12
6
 
13
7
  イベントハンドラ等がstaticですが、これは意図してやってるんでしょうか?
14
8
 
15
-
16
-
17
9
  少なくとも普通に作った場合は、想定通り閉じます。
18
10
 
19
-
20
-
21
- ```C#
11
+ ```cs
22
-
23
12
  using System;
24
-
25
13
  using System.Windows.Forms;
26
14
 
15
+ namespace Questions347963
16
+ {
17
+ public partial class Form1 : Form
18
+ {
19
+ public Form1()
20
+ {
21
+ InitializeComponent();
22
+ Load += Form1_Load;
23
+ }
27
24
 
25
+ private void Form1_Load(object sender, EventArgs e)
26
+ => new Form2().Show();
27
+ }
28
+ }
29
+ ```
30
+
31
+ ```cs
32
+ using System;
33
+ using System.Diagnostics;
34
+ using System.Windows.Forms;
28
35
 
29
36
  namespace Questions347963
37
+ {
38
+ public partial class Form2 : Form
39
+ {
40
+ private int countDown;
41
+ private readonly Timer myTimer = new Timer { Interval = 1000, };
30
42
 
31
- {
32
-
33
- public partial class Form1 : Form
34
-
35
- {
36
-
37
- public Form1()
43
+ public Form2()
38
-
39
44
  {
40
-
41
45
  InitializeComponent();
42
-
43
- Load += Form1_Load;
46
+ Load += Form2_Load;
44
-
45
47
  }
46
48
 
47
-
48
-
49
- private void Form1_Load(object sender, EventArgs e)
49
+ private void Form2_Load(object sender, EventArgs e)
50
-
51
- => new Form2().Show();
52
-
53
- }
54
-
55
- }
56
-
57
- ```
58
-
59
-
60
-
61
- ```C#
62
-
63
- using System;
64
-
65
- using System.Diagnostics;
66
-
67
- using System.Windows.Forms;
68
-
69
-
70
-
71
- namespace Questions347963
72
-
73
- {
74
-
75
- public partial class Form2 : Form
76
-
77
- {
78
-
79
- private int countDown;
80
-
81
- private readonly Timer myTimer = new Timer { Interval = 1000, };
82
-
83
-
84
-
85
- public Form2()
86
-
87
50
  {
88
-
51
+ myTimer.Tick += MyTimer_Tick;
89
- InitializeComponent();
52
+ myTimer.Start();
90
-
91
- Load += Form2_Load;
92
-
93
53
  }
94
54
 
95
-
96
-
97
- private void Form2_Load(object sender, EventArgs e)
55
+ private void MyTimer_Tick(object sender, EventArgs e)
98
-
99
56
  {
100
-
57
+ countDown++;
101
- myTimer.Tick += MyTimer_Tick;
58
+ Debug.WriteLine(countDown);
102
-
59
+ if (countDown >= 15)
60
+ {
61
+ Debug.WriteLine("15秒経過したので終了");
103
- myTimer.Start();
62
+ myTimer.Stop();
104
-
63
+ Close();
64
+ }
105
65
  }
106
-
107
-
108
-
109
- private void MyTimer_Tick(object sender, EventArgs e)
110
-
111
- {
112
-
113
- countDown++;
114
-
115
- Debug.WriteLine(countDown);
116
-
117
- if (countDown >= 15)
118
-
119
- {
120
-
121
- Debug.WriteLine("15秒経過したので終了");
122
-
123
- myTimer.Stop();
124
-
125
- Close();
126
-
127
- }
128
-
129
- }
130
-
131
66
  }
132
-
133
67
  }
134
-
135
68
  ```