java swing的高手们进来,帮我看看这个界面怎么布局。

http://hiphotos.baidu.com/doublefool/mpic/item/8bccac0f06f72df2ab6457eb.jpg上中下三个分面板,最... http://hiphotos.baidu.com/doublefool/mpic/item/8bccac0f06f72df2ab6457eb.jpg
上中下三个分面板,最主要最上面那个有按钮又有表的面板如何处理。
展开
 我来答
chenxinppoo
2009-02-09 · TA获得超过606个赞
知道小有建树答主
回答量:286
采纳率:100%
帮助的人:205万
展开全部
用netbeans开发直接拖拽,很容易实现图上的布局。如果非得要知道代码的话,我感觉,上中下应该用网格布局GridLayout.(new GridLayout(3,1)),在依次添加三个JPanel。中下就在JPanel上添加表格就行了。在上面的用FloweLayout,这个布局管理器是根据从左到右的顺序添加,如果在一行下添加不下,就会依次往下一行添加。还有一种办法,就是在上面的JPanel用GridLayout,分成两行一列,上面的添加JLabel和按钮,下面的就是JTable。
模拟代码:
import javax.swing.*;
import java.awt.*;

public class Test extends JFrame
{
private JButton btn1;
private JButton btn2;
private JButton btn3;
private JLabel label;
private JTable table1;
private JTable table2;
private JTable table3;
private JPanel panel1;
private JPanel panel2;
private JPanel panel3;
private JPanel panel4;
private JPanel panel5;

public Test()
{
btn1=new JButton("1");
btn2=new JButton("2");
btn3=new JButton("3");
label=new JLabel("This is a simple");
table1=new JTable();
table2=new JTable();
table3=new JTable();
table1.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null, null},
{null, null, null, null},
{null, null, null, null},
{null, null, null, null}
},
new String [] {
"Title 1", "Title 2", "Title 3", "Title 4"
}
));
table2.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null, null},
{null, null, null, null},
{null, null, null, null},
{null, null, null, null}
},
new String [] {
"Title 1", "Title 2", "Title 3", "Title 4"
}
));
table3.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null, null},
{null, null, null, null},
{null, null, null, null},
{null, null, null, null}
},
new String [] {
"Title 1", "Title 2", "Title 3", "Title 4"
}
));
panel1=new JPanel();
panel2=new JPanel();
panel3=new JPanel();
panel4=new JPanel();
panel5=new JPanel();
this.setLayout(new GridLayout(3,1));
this.add(panel1);
this.add(panel2);
this.add(panel3);
panel2.add(table2);
panel3.add(table3);
panel1.setLayout(new GridLayout(2,1));
panel1.add(panel4);
panel1.add(panel5);
panel4.setLayout(new FlowLayout());
panel4.add(label);
panel4.add(btn1);
panel4.add(btn2);
panel4.add(btn3);
panel5.add(table1);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(220,260);
}

public static void main(String[] args)
{
Test test=new Test();
test.setVisible(true);
}
}
帐号已注销
2009-02-08 · TA获得超过5622个赞
知道大有可为答主
回答量:1459
采纳率:0%
帮助的人:1382万
展开全部
上面三个按钮可以放在底层面板里。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友7daeea6
2009-02-08 · 超过20用户采纳过TA的回答
知道小有建树答主
回答量:77
采纳率:0%
帮助的人:60.7万
展开全部
面板名称.getContentPane().setLayout(null);
控件名.setBounds(x轴,y轴,宽,高);

你试试不使用布局管理器,使用绝对定位,这样应该就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
鬼眼狂豆
2009-02-10
知道答主
回答量:22
采纳率:0%
帮助的人:0
展开全部
。。。你可以使用定位布局
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式