up
也忘了差不多了,好像要invalide()/valide()一下吧什么线条?
水平,垂直线?用个变态的button模拟一下?

解决方案 »

  1.   

    这样动态添加控件
    public class Frame1 extends JFrame
    {
      JButton btn4;  public Frame1()
      {
        addMouseListener(new hand());
        setSize(400,400);
      }  class hand extends MouseAdapter
      {
        public void mouseClicked(MouseEvent e)
        {
          if(e.getButton()==1)
          {
            btn4=new JButton("insert");
            getContentPane().add(btn4,BorderLayout.CENTER);
            btn4.setSize(100,100);
            btn4.setVisible(true);
          }
        }
      }
    }
      

  2.   

    画线就这样直接画就可以了呀。
    public class Frame1 extends JFrame
    {
      public Frame1()
      {
        setSize(400,400);
      }
      public void paint(Graphics g)
      {
        g.drawLine(10,10,300,200);
      }
    }
      

  3.   

    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;public class Frame1 extends JFrame
    {
    JButton btn4;
    JFrame f=new JFrame(); public Frame1()
    {
    Container con = f.getContentPane();
    f.add(btn4);
    addMouseListener(new hand());
    setSize(400,400);
    }

    private void displayFrame()
    {
    btn4=new JButton("insert");
       this.getContentPane().add(btn4,BorderLayout.CENTER);
       btn4.setVisible(true);
       f.setCursor(DEFAULT_CURSOR); } class hand extends MouseAdapter
    {
    public void mouseClicked(MouseEvent e)
    {
           if(e.getButton()==1)
    {
    displayFrame();
           }
         }
       }
    }