-2
以下是在控制台中给了我很多错误,如果screen S
使用new screen(10)
进行初始化(您应该预先减小数组大小),那么会出现很多错误,为什么?这段java代码为什么会给我这么多错误?
import java.awt.*;
import javax.swing.*;
public class screen{
JFrame window=new JFrame();
JPanel scr=new JPanel();
JPanel[][] pixels=new JPanel[240][360];
screen(int scale){
scr.setLayout(new GridLayout(240,360));
int x=0;
for(JPanel Fx[]:pixels){
for(JPanel Fy:Fx){
Fy=new JPanel();
if(x%3==0){Fy.setBackground(Color.red);}
if(x%3==1){Fy.setBackground(Color.green);}
if(x%3==2){Fy.setBackground(Color.blue);}
x++;
Fy.setPreferredSize(new Dimension(scale,scale));
scr.add(Fy);}}
window.add(scr);
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.pack();
window.setResizable(false);
window.setVisible(true);
}
public static void main (String[] args){
screen S=new screen(1);
}
}
编辑(因为我不能由于缺乏因果报应的回复):
@Makoto:
这是我得到的错误,
@Hovercraft Full Of Eels:
我已将for循环更改为它但是它给了我相同的错误。
@PradeepSimha:再看一遍。有方法。代码在方法中。这只是不明显。 – Makoto
你的代码没有任何合成错误。你有错误信息吗?仅凭这一点很难理解你在说什么。 – Makoto
@Makoto:他创建一个新的JPanel并将其分配给for-each变量时存在逻辑错误。 –