① java的图形界面的布局设计有哪些,各种布局的用法。
基本有五种
BorderLayout 边界布局管理器
将容器分为东、南、西、北、中五个区域
分别用BorderLayout.SOUTH BorderLayout.NORTH BorderLayout.EAST BorderLayout.WEST BorderLayout.CENTER
FlowLayout 流式布局管理器
按照组件的添加顺序将组件从左到右放置在容器中。允许左对齐、居中对齐、或右对齐
GridLayout网格布局管理器
将容器分割成多行多列 按照组件添加的顺序一次讲组件从左到右放置
GridBagLayout网格包布局管理器
允许组件中各个组件的大小各不相同
CardLayout 卡片布局管理器
将界面看成一些列的卡片,每一个卡片都有一个容器,任何时候只有一张卡片时可见的
构造方法有CradLayout()和CradLayout(int hgap,int vgap)
参数hgap表示卡片和容器的左右边界之间的间隙,参数vgap表示卡片和容器的上下边界之间的间隙
② java中的BorderLayout布局不成工 在面板里嵌套组件不按预想的一样
换布局
new GridLayout(2,1)
③ Java怎么在一个容器里使用多个布局管理器
比较复杂的布局,可以用功能强大的布局管理器一次布局出来,比如GridBagLayout,也可以用简单的管理器多层嵌套实现,嵌套通常使用JPanel里放JPanel来实现,设置对应JPanel的布局管理器即可。
④ 在java中怎样在布局中内嵌布局
java中swing布局,Frame是整个窗体,JPanel是面板,面板上可以添加组件,像按钮,输入框,标签等等,当然也可以添加JPanel面板,所以面板里面套面板这就是内嵌布局。每个JPanel里面又可以指定布局的方式,流式布局(FlowLayout),边框布局(BorderLayout)。。。。。很多的,这个要说清楚得好些时间。并且java提供的swing现在没人用了~~
⑤ 什么是容器的布局,试列举并简述java中常用的几种布局策略
容器的布局是指对添加的各个组件进行有序的、统一的对位置进行编排,使其更加美观。
JavaFX典型的布局策略:
1、lowPane面板
它采用的布局策略是:按照控件的添加次序按个摆放,按照从上到下、从左到右的次序摆放。当窗口的大小发生变化后,场景的大小也自动跟着变化,面板的大小也跟着变化,并且会重新计算各个控件的位置,重新摆放各个控件的位置。
2、GridPane面板
它采用的布局策略是:将整个面板划分为若干个格子,每个格子的大小是一样的,每个格子中可以放置一个控件,类似于表格的方式。
3、BorderPane面板
它采用的布局策略是:将整个面板划分五个区域,分别是上、下、左、右、中,每个区域可以放置一个控件。
4、HBox面板
HBox是将所有的控件放在同一行,无论有多少个控件都是放在同一行。
5、Box面板
VBox的布局策略与HBox类似,不过VBox是将所有的控件放在同一列。
(5)java布局嵌套布局扩展阅读:
容器没有布置它自己构件的功能,而把这个责任授权给一个布局管理器。
顺序布局是最基本的一种布局,面板的默认布局就是顺序布局。顺序布局指的是把图形元件一个接一个地放在面板上。
边界布局包括5个区:北区、南区、东区、西区和中区。这5个区在面板上的分布规律是“上北下南,左西右东”。
⑥ java布局嵌套问题
可以,你要在BorderLayout.CENTER 那里添加一个jpanle容器,jpanle的布局使用默认布局就行了,就能达到你想要的效果~
⑦ 如何在一个java的布局框架里再添加另一个
首先,GridLayout的布局不分东西南北中,BorderLayout布局才分。
在放置大按钮的地方放一个Panel,给Panel设置为flowlayout布局或gridlayout,这样应该可以吧
⑧ java初学者,大神看看我这个哪里错了烦死了,老师布置的布局管理器嵌套。不看代码就看看语法问题。
改成这样:
import java.awt.BorderLayout;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class two extends JFrame {
public two() {
super("布局管理器嵌套---课堂练习");
this.setBounds(100, 100, 300, 200);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setLayout(new GridLayout(2, 1));
JPanel a = new JPanel();
a.setLayout(new BorderLayout());
this.getContentPane().add(new JButton("button_1"), "West");
this.getContentPane().add(new JButton("button_2"), "East");
JPanel b = new JPanel();
b.setLayout(new GridLayout(2, 1));
this.getContentPane().add(new JButton("button_3"));
this.getContentPane().add(new JButton("button_4"));
this.getContentPane().add(b);
JPanel c = new JPanel();
c.setLayout(new BorderLayout());
this.getContentPane().add(new JButton("button_5"), "West");
this.getContentPane().add(new JButton("button_6"), "East");
JPanel d = new JPanel();
b.setLayout(new GridLayout(2, 2));
this.getContentPane().add(new JButton("button_7"));
this.getContentPane().add(new JButton("button_8"));
this.getContentPane().add(new JButton("button_9"));
this.getContentPane().add(new JButton("button_10"));
this.getContentPane().add(d);
this.getContentPane().add(a);
this.getContentPane().add(c);
this.setVisible(true);
}
public static void main(String[] args) {
new two();
}
}
望采纳,3ks
⑨ java嵌套布局代码
center.setLayout(new GridLayout(3,4)); 你这个是3行4列 也就是能放12个的 但是你却放了16个button 当然不行啦
⑩ java图形界面的布局
没用过SWT的人路过,提供一个SWING:
窗口用JFrame(frame),布局为BorderLayout.
顶部为JLabel(labelTop),带图片和文字,用frame.add(labelTop, BorderLayout.NORTH)加入
左面为JPanel(panelLeft),布局为BoxLayout,参数Y_AXIS.需要在创建JPanel时设置Layout为NULL,然后再创建BoxLayout时需要把已经建立的panelLeft作为参数传进去,然后再设置panelLeft的Layout为那个BoxLayout。用frame.add(panelLeft, BorderLayout.WEST)加入
中间为一堆不同功能的JPanel,布局根据功能而定了,在点击按钮时,移除frame此时中间的panel(记录在一个自己的变量panelCenter里),然后加入按钮对应的panel,再把加入的panel存入变量panelCenter.