Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 不显示字符串_Java_String_Swing_Graphics - Fatal编程技术网

Java 不显示字符串

Java 不显示字符串,java,string,swing,graphics,Java,String,Swing,Graphics,所以我制作了一个程序,应该在屏幕上显示一系列的字符串,14 X 14长。当您更改大小时,它曾经工作,但我将SetResizeable设置为false,所以现在我可以 我什么也没看见。我感谢你的帮助。代码如下: private Color textColor = Color.BLACK; private Random random = new Random(); String[][] letters = new String[14][14]; float fontsize = Toolkit.g

所以我制作了一个程序,应该在屏幕上显示一系列的字符串,14 X 14长。当您更改大小时,它曾经工作,但我将SetResizeable设置为false,所以现在我可以 我什么也没看见。我感谢你的帮助。代码如下:

private Color textColor = Color.BLACK;
private Random random = new Random();
String[][] letters = new String[14][14];

float fontsize = Toolkit.getDefaultToolkit().getScreenSize().width / 50;

public void paint(Graphics g) {
    g.setColor(textColor);
    setFont(getFont().deriveFont(fontsize));

    for (int i = 0; i < 13; i++) {  
        for (int j = 0; j < 13; j++) {
            if ((int) (Math.random() * 100) > 97) {
                letters[i][j] = "w";
                textColor = Color.BLUE;
                System.out.println("asd");
            } else {
                letters[i][j] = "l";
                textColor = new Color(0, 100, 0);
            }

            g.drawString(letters[i][j], i * 34, j * 34);

            if (i >= 99)
                System.out.println("asdasdasd");
        }
    }
}

@Override
public void actionPerformed(ActionEvent e) {
    // repaint();
}

public mainClass() {
    setSize(Toolkit.getDefaultToolkit().getScreenSize().width / 3, 
            Toolkit.getDefaultToolkit().getScreenSize().width / 3 + 80);

    setDefaultCloseOperation(EXIT_ON_CLOSE);

    Timer timer = new Timer(500, this);
    timer.setInitialDelay(0);
    timer.start();

    setResizable(false);        
    this.setBackground(Color.BLACK);

    setVisible(true);
}

public static void main(String[] args) {
    mainClass myWindow = new mainClass();
}
private Color textColor=Color.BLACK;
私有随机=新随机();
字符串[][]个字母=新字符串[14][14];
float fontsize=Toolkit.getDefaultToolkit().getScreenSize().width/50;
公共空间涂料(图g){
g、 setColor(textColor);
setFont(getFont().deriveFont(fontsize));
对于(int i=0;i<13;i++){
对于(int j=0;j<13;j++){
如果((int)(Math.random()*100)>97){
字母[i][j]=“w”;
textColor=Color.BLUE;
系统输出打印项次(“asd”);
}否则{
字母[i][j]=“l”;
textColor=新颜色(0,100,0);
}
g、 抽绳(字母[i][j],i*34,j*34);
如果(i>=99)
System.out.println(“asdasdasd”);
}
}
}
@凌驾
已执行的公共无效操作(操作事件e){
//重新油漆();
}
公共类(){
设置大小(Toolkit.getDefaultToolkit().getScreenSize().width/3,
Toolkit.getDefaultToolkit().getScreenSize().width/3+80);
setDefaultCloseOperation(关闭时退出);
计时器=新的计时器(500,此);
timer.setInitialDelay(0);
timer.start();
可设置大小(假);
这个.背景(颜色.黑色);
setVisible(真);
}
公共静态void main(字符串[]args){
mainClass myWindow=新的mainClass();
}

如果您对程序(而不是用户)重新调整
JFrame
的大小没问题,您可以尝试
pack()
,即使
setresizeable
设置为
false
也可以使用


但是,如果您不想允许任何类型的重新调整大小,则需要进一步解释您的问题。

是否需要详细说明?这不是调试服务。请不要重写paint()。阅读上的Swing教程,了解进行自定义绘制的正确方法。如果您仍然需要更多帮助,请发布一个演示问题的
SSCCE
。我很困惑。应该如何理解以下内容:“以前,当您更改大小时,它可以工作,但我将SetResizeable设置为false,所以现在我什么也看不到。我感谢您的帮助。”很抱歉,我要解释一下,但我是一个非常新手的程序员,我真的不知道发生了什么。编辑:@pm77-1我正在尝试制作一个游戏,我不希望窗口的大小可以调整。以前,如果您在窗口的一侧拖动以更改其大小或使其最大化,则会出现字符串,但现在我将其更改为可设置大小(false),显然不允许您这样做。那么您到底需要什么帮助?