質問編集履歴
4
質問を少しまとめてみました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
2
|
|
3
|
-
`JFrame`内で`space`を押すと赤色の`JPanel`を一定間隔で0.01秒おきに右側に移動させるようにして、赤が進むようになっています。しかし、実際に`space`を押すと下のコードの赤を進ませる`for`文が終了した状態で赤が表示されています。つまり、赤が進んでいるように見えません。理想は、`for`文の途中で毎回赤を表示させて赤が移動して進んでいるように見えるようにしたいです。どうすれば`for`が終了した状態で表示されるのではなく`for`の途中で毎回表示できるようになりますか。
|
3
|
+
`JFrame`内で`space`を押すと赤色の`JPanel`を一定間隔で0.01秒おきに右側に移動させるようにして、赤が進むようになっています。しかし、実際に`space`を押すと下のコードの赤を進ませる`for`文が終了した状態で赤が表示されています。つまり、赤が進んでいるように見えません。理想は、`for`文の途中で毎回赤を表示させて赤が移動して進んでいるように見えるようにしたいです。ソースコード`2`がいい例でこれだと`for`の途中でも表示されます。どうすれば`1`で`for`が終了した状態で表示されるのではなく`2`のように`for`の途中で毎回表示できるようになりますか。
|
4
4
|
|
5
5
|
簡単なサンプルコードもお願いします。
|
6
6
|
|
@@ -10,7 +10,9 @@
|
|
10
10
|
|
11
11
|
|
12
12
|
|
13
|
+
```1
|
14
|
+
|
13
|
-
|
15
|
+
import javax.swing.*;
|
14
16
|
|
15
17
|
import java.awt.*;
|
16
18
|
|
@@ -146,6 +148,64 @@
|
|
146
148
|
|
147
149
|
```
|
148
150
|
|
151
|
+
```2
|
152
|
+
|
153
|
+
import javax.swing.*;
|
154
|
+
|
155
|
+
import java.awt.*;
|
156
|
+
|
157
|
+
public class test01 extends JFrame{
|
158
|
+
|
159
|
+
public static void main(String[] args){
|
160
|
+
|
161
|
+
test01 f = new test01();
|
162
|
+
|
163
|
+
}
|
164
|
+
|
165
|
+
test01(){
|
166
|
+
|
167
|
+
setBounds(100,100,500,500);
|
168
|
+
|
169
|
+
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
170
|
+
|
171
|
+
getContentPane().setBackground(Color.WHITE);
|
172
|
+
|
173
|
+
setLayout(null);
|
174
|
+
|
175
|
+
setVisible(true);
|
176
|
+
|
177
|
+
|
178
|
+
|
179
|
+
JPanel panel = new JPanel();
|
180
|
+
|
181
|
+
panel.setBackground(Color.RED);
|
182
|
+
|
183
|
+
panel.setBounds(100,100,10,10);
|
184
|
+
|
185
|
+
add(panel);
|
186
|
+
|
187
|
+
|
188
|
+
|
189
|
+
while(true){
|
190
|
+
|
191
|
+
try{System.in.read();}catch(Exception e){}
|
192
|
+
|
193
|
+
for(int i=0;i<500;i++){
|
194
|
+
|
195
|
+
panel.setBounds(i,100,10,10);
|
196
|
+
|
197
|
+
try{Thread.sleep(10);}catch(Exception e){}
|
198
|
+
|
199
|
+
}
|
200
|
+
|
201
|
+
}
|
202
|
+
|
203
|
+
}
|
204
|
+
|
205
|
+
}
|
206
|
+
|
207
|
+
```
|
208
|
+
|
149
209
|
### 補足情報(FW/ツールのバージョンなど)
|
150
210
|
|
151
211
|
java jdk-14.0.2
|
3
質問とソースコードを更新しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
2
|
|
3
|
-
`JFrame`内で`space`を押すと赤色の`JPanel`を一定間隔で0.01秒おきに右側に移動させるようにして、赤が進むようになっています。しかし、実際に`space`を押すと下のコードの赤を進ませる`for`文が終了した状態で赤が表示されています。理想は、`for`文の途中で毎回
|
3
|
+
`JFrame`内で`space`を押すと赤色の`JPanel`を一定間隔で0.01秒おきに右側に移動させるようにして、赤が進むようになっています。しかし、実際に`space`を押すと下のコードの赤を進ませる`for`文が終了した状態で赤が表示されています。つまり、赤が進んでいるように見えません。理想は、`for`文の途中で毎回赤を表示させて赤が移動して進んでいるように見えるようにしたいです。どうすれば`for`が終了した状態で表示されるのではなく`for`の途中で毎回表示できるようになりますか。
|
4
4
|
|
5
5
|
簡単なサンプルコードもお願いします。
|
6
6
|
|
2
質問とソースコードを更新しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
2
|
|
3
|
-
`JFrame`内で`space`を押すと赤色の`JPanel`を一定間隔で
|
3
|
+
`JFrame`内で`space`を押すと赤色の`JPanel`を一定間隔で0.01秒おきに右側に移動させるようにして、赤が進むようになっています。しかし、実際に`space`を押すと下のコードの赤を進ませる`for`文が終了した状態で赤が表示されています。理想は、`for`文の途中で毎回球を表示させて赤が移動しているようにしたいです。どうすれば`for`が終了した状態で表示されるのではなく`for`の途中で毎回表示できるようになりますか。
|
4
4
|
|
5
5
|
簡単なサンプルコードもお願いします。
|
6
6
|
|
@@ -10,9 +10,7 @@
|
|
10
10
|
|
11
11
|
|
12
12
|
|
13
|
-
```java
|
14
|
-
|
15
|
-
import javax.swing.*;
|
13
|
+
```javaimport javax.swing.*;
|
16
14
|
|
17
15
|
import java.awt.*;
|
18
16
|
|
@@ -108,13 +106,17 @@
|
|
108
106
|
|
109
107
|
case KeyEvent.VK_SPACE://スペースキー
|
110
108
|
|
111
|
-
for(int i=
|
109
|
+
for(int i=x;i<x+350;i+=10){
|
110
|
+
|
111
|
+
ball.setVisible(false);
|
112
112
|
|
113
113
|
ball.setBounds(i,y,10,10);
|
114
114
|
|
115
|
+
ball.setVisible(true);
|
116
|
+
|
115
117
|
try{
|
116
118
|
|
117
|
-
Thread.sleep(1
|
119
|
+
Thread.sleep(1);
|
118
120
|
|
119
121
|
}catch(Exception a){
|
120
122
|
|
1
質問を追加しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
2
|
|
3
3
|
`JFrame`内で`space`を押すと赤色の`JPanel`を一定間隔で一秒おきに右側に移動させるようになっています。最終的には、間隔をもっと短くして赤が移動しているようにしたいです。しかし、実際に`space`を押すと下のコードの赤を進ませる`for`文が終了した状態で赤が表示されています。これを赤が移動しているようにしてシューティングゲームを作りたいのですがどうすればいいでしょうか。
|
4
|
+
|
5
|
+
簡単なサンプルコードもお願いします。
|
4
6
|
|
5
7
|
|
6
8
|
|