当前位置: 代码迷 >> J2SE >> Java中的gui设计有关问题,想设计一个界面,左面显示一列按钮,右面是界面
  详细解决方案

Java中的gui设计有关问题,想设计一个界面,左面显示一列按钮,右面是界面

热度:5541   发布时间:2013-02-25 00:00:00.0
Java中的gui设计问题,想设计一个界面,左面显示一列按钮,右面是界面
Java中的gui设计问题,想设计一个界面,左面显示一列按钮,右面是界面,然后点击不同的按钮右面界面是不同的,这个如何做 运用什么知识或者是哪个API?是CardLayout吗?

------解决方案--------------------------------------------------------
Java的GUI界面,设计上不能只靠一种Layout来解决问题,而是要容器套容器,不同容器用不同的Layout,组合来发挥效力。

1、你的需求中,主容器用BorderLayout(缺省就是了);
2、准备放按钮的地方,就是(BorderLayout.WEST),这里放子容器(如JPanel),选择FlowLayout或GridLayout;然后子容器中再放按钮;
3、准备放界面的地方,就中间(BorderLayout.CENTER),也可以放个子容器(便于后续你还需要其它布局)。
------解决方案--------------------------------------------------------
CardLayout 对象是容器的布局管理器。它将容器中的每个组件看作一张卡片。一次只能看到一张卡片,容器则充当卡片的堆栈。当容器第一次显示时,第一个添加到 CardLayout 对象的组件为可见组件。 
first(Container parent) 
翻转到容器的第一张卡片。
last(Container parent) 
翻转到容器的最后一张卡片。
next(Container parent) 
翻转到指定容器的下一张卡片。


------解决方案--------------------------------------------------------
支持 1 楼的
------解决方案--------------------------------------------------------
Java code
import java.awt.BorderLayout;import java.awt.Color;import javax.swing.JButton;import javax.swing.JPanel;public class SwingTest extends javax.swing.JFrame{    /**     *      */    private static final long serialVersionUID = 1L;    public SwingTest(){        //按钮        JButton jb = new JButton();                //分配区域        JPanel jp = new JPanel();        jp.setSize(150, 500);        jp.setBackground(Color.PINK);        jp.add(jb);                //设置SwingTest        add(BorderLayout.WEST, jp);        setLayout(new BorderLayout());                setBounds(0,0,800,500);        setDefaultCloseOperation(3);        setVisible(true);        }        public static void main(String args[]){        new SwingTest();    }}
  相关解决方案