高级绘制
import javax.swing.*;
public class Swing2 {
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
createGUI();
}
});
}
private static void createGUI() {
JFrame frame = new MyFrame("Swing Demo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(500, 300);
frame.setVisible(true);
}
}
import javax.swing.*;
import java.awt.*;
public class MyFrame extends JFrame {
public MyFrame(String title) {
super(title);
JPanel root = new MyPanel();
this.setContentPane(root);
root.setLayout(new BorderLayout());
}
}
import javax.swing.*;
import java.awt.*;
public class MyPanel extends JPanel {
@Override
protected void paintComponent(Graphics g) {
int width = getWidth();
int height = getHeight();
Graphics2D g2d = (Graphics2D)g;
g2d.setColor(Color.BLUE);
g2d.drawLine(0, 0, width, height);
g2d.drawLine(width, 0, 0, height);
}
}
Graphics2D
import javax.swing.*;
import java.awt.*;
public class MyPanel extends JPanel