我想做个想QQ聊天窗口一样上大下小的窗口,用了一个frame,格子布局,两个panel,方位布局,新建两个textarea,设置panel size 根据frame大小变化,喂猫不行呢?- rt java.awt.BorderLayout;
- import java.awt.Frame;
- import java.awt.GridLayout;
- import java.awt.Panel;
- import java.awt.TextArea;
- import java.awt.event.WindowAdapter;
- import java.awt.event.WindowEvent;
- public class TalkTool
- { /**
- * @param args
- */
- public static void main(String[] args)
- {
- // TODO Auto-generated method stub
- Window window1 = new Window();
- }
- }
- class Window
- {
- Frame frame ;
- Panel p1,p2;
- TextArea tAreaout;
- TextArea tAreain;
- Window()
- {
- frame =new Frame("聊天工具");
- p1= new Panel();
- p2 = new Panel();
- //p1.setBackground(Color.black);
-
-
- frame.setVisible(true);
- p1.setVisible(true);
- p2.setVisible(true);
- frame.setLayout(new GridLayout(2,1) );
- p1.setLayout(new BorderLayout());
- p2.setLayout(new BorderLayout());
- p1.setSize(frame.getWidth(),frame.getHeight()/4);
- p2.setSize(frame.getWidth(),3*frame.getHeight()/4);
- event();
- tAreaout = new TextArea();
- tAreain = new TextArea();
- //tAreain.setSize(tAreaout.getWidth(),(tAreaout.getHeight())/2);
-
- frame.add(p1,BorderLayout.SOUTH);
- frame.add(p2,BorderLayout.NORTH);
- p1.add(tAreaout,BorderLayout.CENTER);
- p2.add(tAreain,BorderLayout.CENTER);
- frame.pack();
- }
-
- public void event()
- {
- frame.addWindowListener(new WindowAdapter()
- {
- public void windowClosing(WindowEvent e)
- {
- System.out.println(frame.getWidth());
- System.exit(0);
- }
- });
-
- }
- }
复制代码 |