我试过用这段代码画一条线,效果很好。
import java.awt.*;
import javax.swing.*;
public class New extends JFrame {
public New() {
setSize(960, 960);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void paint(Graphics g) {
g.drawLine(0, 480, 960, 480);
}
public static void main(String[] args) {
New n = new New();
}
}
我也尝试了下面的代码来画一条线,但没有线显示在框架中。
import java.awt.*;
import javax.swing.*;
public class Test {
public Test() {
JFrame f = new JFrame("Test");
f.setSize(960, 960);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
}
public void paint(Graphics g) {
g.drawLine(0, 480, 960, 480);
}
public static void main(String []args) {
Test t = new Test();
}
}
我认为这两个片段之间没有区别。我错了吗?有什么区别吗?
最佳答案
JFrame
是在构造函数中声明的,这意味着它将在 Test
创建后被删除。此外,paint
方法不属于 JFrame
,而是属于 Test
。所以它不会被调用。
关于java - 在java中画线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38017643/