Java 我正在尝试制作一个矩形,它需要用户输入以获得一个大小

Java 我正在尝试制作一个矩形,它需要用户输入以获得一个大小,java,graphics,Java,Graphics,我是java新手,我想制作一个矩形,它使用用户输入和扫描仪来获取矩形的大小。问题是它接受用户输入,但不显示矩形。我相信这是因为我的y整数是在一个静态函数中,但我不知道如何解决这个问题。我在谷歌搜索了很长一段时间,但没有找到答案。谁能帮帮我吗?谢谢。:) 您发布的代码没有编译,所以现在有了显示矩形的方法 int y在main中定义,在paintComponent中无法识别。 将其设置为类变量:static int y并在mainby:y=myY.nextInt()中初始化它您发布的代码无法编译,因

我是java新手,我想制作一个矩形,它使用用户输入和扫描仪来获取矩形的大小。问题是它接受用户输入,但不显示矩形。我相信这是因为我的y整数是在一个静态函数中,但我不知道如何解决这个问题。我在谷歌搜索了很长一段时间,但没有找到答案。谁能帮帮我吗?谢谢。:)


您发布的代码没有编译,所以现在有了显示矩形的方法
int y
main
中定义,在
paintComponent
中无法识别。

将其设置为类变量:
static int y并在
main
by:
y=myY.nextInt()中初始化它

您发布的代码无法编译,因此现在有了显示矩形的方法
int y
main
中定义,在
paintComponent
中无法识别。

将其设置为类变量:
static int y并在
main
by:
y=myY.nextInt()中初始化它

谢谢,谢谢。谢谢,谢谢。
    import java.util.Scanner;
    import java.awt.*;
    import java.awt.event.ActionListener;

    import javax.swing.*;

    public class Shape extends JPanel implements ActionListener{

        Timer tm = new Timer(5, this);

        public static void main(String[] args){
             System.out.println("Place in the width of your vaccum cleaner here:");     
             Scanner myY = new Scanner(System.in);
             int y = myY.nextInt();

             JFrame jf = new JFrame("Title");
             jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
             Shape s = new Shape();
             jf.add(s);
             jf.setSize(600, 400);
             jf.setVisible(true);
        }
        public void paintComponent(Graphics g){
             super.paintComponent(g);
             this.setBackground(Color.PINK);

             g.setColor(Color.BLACK);
             g.fillRect(0, 0, 40, y);

             tm.start();
        }
    }