怎么使用画板函数Graphics画一个圆、长方形
最后再画一个圆角的长方形
小弟初学者  
作业题  拜托了  !!!java.swing应用

解决方案 »

  1.   

    import javax.swing.*;import java.awt.*;@SuppressWarnings("serial")
    public class Triangle extends JFrame {
    public Triangle() {
    TrianglePaint b = new TrianglePaint();
    this.add(b);
    } public static void main(String[] args) {
    Triangle a = new Triangle();
    a.setSize(300, 300);
    a.setLocationRelativeTo(null);
    a.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    a.setVisible(true);
    } public class TrianglePaint extends JPanel {
    @Override
    protected void paintComponent(Graphics g) {
    super.paintComponents(g);
    g.setColor(Color.red);
    g.drawRect(0, 0, 100, 100);
    g.drawLine(100, 100, 200, 200);
    }
    }}
      

  2.   

    刚才发错了。
    思路是设计一个刺激JPanel的类中,并在类中覆盖父类中的paintComponent(Graphics g)方法,当建立该类的对象时就会自动调用paintComponent方法
    import javax.swing.*;import java.awt.*;@SuppressWarnings("serial")
    public class Triangle extends JFrame {
    public Triangle() {
    TrianglePaint b = new TrianglePaint();
    this.add(b);
    } public static void main(String[] args) {
    Triangle a = new Triangle();
    a.setSize(300, 300);
    a.setLocationRelativeTo(null);
    a.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    a.setVisible(true);
    } public class TrianglePaint extends JPanel {
    @Override
    protected void paintComponent(Graphics g) {
    super.paintComponents(g);
    g.setColor(Color.red);
    g.drawRoundRect(0, 0, 100, 100,10,10);
    }
    }}