/**
* JPanel 的作用是可以定义layout
* @author Administrator
*
*/
public class Gui extends JFrame implements ActionListener{
@Override
public void actionPerformed(ActionEvent arg0) {
}
public static void main(String[] a){
Gui gui = new Gui();
gui.setVisible(true);
gui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private final String[] grid= {"网0","格1","布2","局3","管理4","器5"};
private JButton gridButton[] = new JButton[grid.length];
private final String[] flow = {"流","式","布","局","管","理","器"};
private JButton flowButton[] = new JButton[flow.length];
private final String[] border = {"边界","布局","管","理","器"};
private JButton borderButton[] = new JButton[border.length];
JButton bt = new JButton("卡片切换");
JButton bt1 = new JButton("网格包布局");
public Gui(){
super();
init();
setBackground(Color.YELLOW);
setTitle("布局管理器综合实例");
setLocation(500,300);
//setResizable(false);
pack(); //使得计算器中各组件大小合适
}
private void init(){
JPanel gridPanel = new JPanel();//网格布局面板
gridPanel.setLayout(new GridLayout(2,3,3,3));
for(int i=0;i<grid.length;i++){//生成按钮,添加到面板中
gridButton[i] = new JButton(grid[i]);
gridPanel.add(gridButton[i]);
gridButton[i].setForeground(Color.BLUE);
}
JPanel flowPanel = new JPanel();
flowPanel.setLayout(new FlowLayout());
for(int i=0;i<flow.length;i++){
flowButton[i] = new JButton(flow[i]);
flowPanel.add(flowButton[i]);
flowButton[i].setForeground(Color.RED);
}
JPanel borderPanel = new JPanel();
borderPanel.setLayout(new BorderLayout());
for(int i=0; i<border.length;i++){
borderButton[i] = new JButton(border[i]);
borderPanel.setForeground(Color.CYAN);
}
borderPanel.add("North",borderButton[0]);
borderPanel.add("East",borderButton[1]);
borderPanel.add("South",borderButton[2]);
borderPanel.add("West",borderButton[3]);
borderPanel.add("Center",borderButton[4]);
//==================cardPanel================================================
JPanel cardPanel = new JPanel();
cardPanel.setLayout(new BorderLayout());
/*JButton bt = new JButton("卡片切换");
cardPanel.add("North",bt);*/
JPanel cp = new JPanel(); //这个panel会把button包起来
bt.addActionListener(this);
cp.add(bt);
JPanel pl = new JPanel();
pl.add(new JButton("button 1"));
pl.add(new JButton("button 2"));
pl.add(new JButton("button 3"));
JPanel p2 = new JPanel();
p2.add(new TextField("TextField",20));
JPanel cards = new JPanel();
CardLayout layout = new CardLayout();
cards.setLayout(layout);
cards.add("Panel with buttons ",pl);
cards.add("Panel with TextField",p2);
cardPanel.add("Center",cards);
JPanel gridBagPanel = new JPanel(); //网格包
gridBagPanel.setLayout(new GridBagLayout());
GridBagConstraints c= new GridBagConstraints();
c.fill = GridBagConstraints.BOTH;
c.weightx = 1.0;
gridBagPanel.add(new JButton("网1"),c);
gridBagPanel.add(new JButton("格2"),c);
gridBagPanel.add(new JButton("包3"),c);
c.gridwidth = GridBagConstraints.REMAINDER;
gridBagPanel.add(new JButton("布4"),c);
c.weightx = 0.0;
gridBagPanel.add(new JButton("局5"),c);
c.gridwidth = GridBagConstraints.RELATIVE;
gridBagPanel.add(new JButton("管6"),c);
c.gridwidth = GridBagConstraints.RELATIVE;
gridBagPanel.add(new JButton("理7"),c);
c.gridheight = 2;
c.gridwidth=1;
c.weighty=1.0;
gridBagPanel.add(new JButton("器8"),c);
c.weighty=0.0;
c.gridwidth = GridBagConstraints.REMAINDER;
c.gridheight=1;
gridBagPanel.add(new JButton("器9"),c);
gridBagPanel.add(new JButton("器0"),c);
getContentPane().setLayout(new BorderLayout());
getContentPane().add("North",flowPanel);
getContentPane().add("West",gridBagPanel);
getContentPane().add("Center",borderPanel);
getContentPane().add("East",cardPanel);
getContentPane().add("South",gridPanel);
}
}
分享到:
相关推荐
Matlab GUI 布局工具箱
android 可视化 GUI 布局 layout 编辑器
java gui布局综合实例
适用于java初学者入门学习,帮助理解java的GUI布局方法!
ButtonGroup 控件需要 Ben Tordoff 和 David 的 GUI 布局工具箱桑普森可在: http://www.mathworks.com/matlabcentral/fileexchange/27758-gui-layout-toolbox 此提交中的控件应放置在 GUI 布局工具箱中的 +uiextras...
java写记事本 得失焦点 QQ登陆框 布局练习 计算器 keyListener
JavaGUI的图型用户界面实例 布局管理器的实例与介绍
Javaweb开发水果超市实现增删改模糊查询功能
主要介绍了JAVA几种GUI布局管理的相关知识,文中代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
java是目前应用最为广泛的程序设计语言之一。在用java进行软件开发时,要想做出漂亮友好的系统界面,界面布局管理是...文章介绍了进行java GUI界面布局管理的三种方法,包括使用布局管理器、空布局及自定义布局管理器。
提供的类可以组合使用以生成几乎任何用户界面布局。 * 水平、垂直或网格排列 MATLAB 用户界面组件 * 混合固定尺寸和可变尺寸的组件 * 通过拖动分隔线以交互方式调整组件大小 * 使用选项卡和面板显示和隐藏组件 * 在...
Java GUI 布局管理方式 Java GUI 布局管理方式是 Java 编程语言中的一种重要概念,用于控制 GUI 组件在容器中的排列方式。在 Java 中,GUI 组件的布局是由容器的布局管理器 (Layout Manager) 来决定的。每个容器都...
ButtonGroup 控件需要 Ben Tordoff 和 David 的 GUI 布局工具箱桑普森可在: http://www.mathworks.com/matlabcentral/fileexchange/47982-gui-layout-toolbox 此提交中的控件应放置在 GUI 布局工具箱中的 +uix ...
java GUI 布局管理器 盒子布局的实列(BoxLayout)
今天小编就为大家分享一篇Python GUI布局尺寸适配方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
用于排课的matlab代码GUI布局工具箱2 该工具箱提供了创建复杂的MATLAB图形用户界面并适当调整大小的工具。 所提供的类可以组合使用,以生成几乎任何用户界面布局。 水平,垂直或网格排列MATLAB用户界面组件 混合固定...
步骤2:创建GUI布局 在GUIDE中选择“Blank GUI (Default)”并点击“OK”。 在工具箱中找到“Axes”,拖放到GUI上,这将是你的绘图区域。 找到“Slider”控件,拖放到GUI上。这个滑块将用于调整正弦波的频率。 再添加...
GUI设计与测试案例分析 GUI设计原则与禁忌 GUI测试要点与总结 案例:手机软件界面设计
Matlab提供了一套可视化的图形用户界面(GUI)开发环境,包括对象浏览器、布局编辑器、几何排列工具、属性查看器、菜单编辑器和Tab顺序编辑器等工具。用户可以使用这些工具来设计和开发图形用户界面,快速地创建 GUI...
Matlab 提供了一套可视化的创建图形窗口的工具,使用图形用户界面开发环境可方便地创建 GUI 应用程序,它可以根据用户设计的 GUI 布局,自动生成 M 文件的框架,用户使用这一框架编制自己的应用程序。 图形用户界面...