1---面板是不是有自己的坐标?
2---面板加入到框架以后,如果有布局管理器的话,那面板的大小是不是会调整呢?这样的话,原来在面板可以显示的东西是不是会看不到呢?
3---一段小程序,我先在两个按钮上画一个椭圆,然后在中间加入"OK"或者"cancel",但是出现了下面问题(1)如果我将按钮直接加入到框架中没有问题,但是当我将按钮先加入到一个面板.然后再把面板加入到框架中的时候就出问题了,只显示出两个小按钮,而且在框架最上方,而且很小,这是为什么呢?
(2)如果我继续在面板上加入布局管理器的时候,为什么GridLayout()就可以实现,而FLowLayout()就失败呢? 这个问题我在写别的小程序时候也经常出现,这是为什么呢,用FlowLayout()的时候.有时候连图形都显示不出来,但是GridLayout()却可以.
import javax.swing.*;import java.awt.*;
public class bb {
   public static void main(String argv[])
   {JFrame p=new JFrame("hello");
    p.setSize(700,700);
    p.setVisible(true);
    p.setBackground(Color.RED);
    
    p.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    p.setLayout(new GridLayout(1,2));   //这里倘若改为new Flowlayout()就  出问题了
    
    JButton q=new JButton();
    q.add(new tt());
    JPanel m=new JPanel();   //m承载一个按钮
    m.setLayout(new GridLayout(1,1));
    m.add(q);
    
    JButton a=new JButton();
    a.add(new gg());
    JPanel b=new JPanel();   //b中来承载另一个按钮
    b.setLayout(new GridLayout(1,1));
    b.add(a);
    
    p.getContentPane().add(m);
    p.getContentPane().add(b);
    p.setBackground(Color.pink);
   }
}
class tt extends JPanel
{protected void paintComponent(Graphics g)
 {
 g.setColor(Color.GREEN);
  g.fillOval(0,0,350,700);
  g.setColor(Color.RED);
  g.drawString("OK",350/2,350);
  
 }

}class gg extends JPanel
{protected void paintComponent(Graphics g)
 {
 g.setColor(Color.RED);
  g.fillOval(0,0,350,700);
  g.setColor(Color.GREEN);
  g.drawString("Cancel",350/2,350);
  
 }

}