這是我的第一篇文章,我對編程非常陌生(自學)。請原諒我,如果我的術語不完全符合標準或我做任何其他失禮。我正在嘗試編寫一個程序,該程序使用兩個類來獲取用戶輸入,並使用該輸入在屏幕上繪製一個簡單的矩形。我已經完成了所有工作,但我無法讓用戶生成的內容得到識別。我已經定義了一個'x'變量,並且用戶輸入了一個值,但是該值每次都通過'0'。系統會提示用戶輸入一個整數值,該值在創建fillrectangle時將用作'x'值。但是,運行時,x值始終爲'0'。不知怎的,變量'x'沒有變成用戶輸入的值。設置變量被其他方法識別
下面是我的代碼,儘管可能很差。希望有人能給我一些想法。
主類
import javax.swing.JFrame;
import java.awt.*;
import java.util.*;
public class first {
public static void main(String[] args) {
second p = new second();
p.setValues();
p.getX();
JFrame j = new JFrame("New Rectangle");
j.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
second t = new second();
j.add(t);
j.setSize(500,500);
j.setVisible(true);
}
}
第二類
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.*;
public class second extends JPanel{
int x;
public void setValues()
{
Scanner s = new Scanner(System.in);
System.out.println("Enter the X value");
x = s.nextInt();
}
public void paintComponent(Graphics g)
{
super.paintComponent(g);
this.setBackground(Color.WHITE);
System.out.println(x);
g.setColor(Color.BLUE);
g.fillRect(x, 20, 50, 50);
}
}
需要second.getX()的代碼。 –
@ user2714543實際上,代碼實際上並不算太差。我看到的一件事是按照慣例,類名應該大寫。 –