求java swing帮忙实现以下布局。

magic_kid_2010 2013-01-25 11:30:56
http://wenwen.soso.com/z/q428179812.htm?ch=ww.gr.dcltw.title&pid=ww.gr.dcltw.title。谢谢。
...全文
271 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
Inhibitory 2013-01-30
  • 打赏
  • 举报
回复
就像下面这样,再美化一下就可以了

package com.tur.demo;

import info.clearthought.layout.TableLayout;

import javax.swing.*;
import java.awt.*;

public class SwingDemo extends JFrame {
public SwingDemo() {
double f = TableLayout.FILL;
double p = TableLayout.PREFERRED;
double[] columnSize = {p, f, p, p};
double[] rowSize = {p, p, p, p, p};

Container container = getContentPane();
container.setLayout(new TableLayout(columnSize, rowSize));

JLabel labelIcon = new JLabel("Label");
labelIcon.setPreferredSize(new Dimension(50, 50));
labelIcon.setBackground(Color.BLUE);
labelIcon.setOpaque(true);
container.add(labelIcon, "0, 0, 0, 1");
container.add(new JLabel("发送离线文件"), "1, 0, 3, 0, l, c");
container.add(new JLabel("文件名字"), "1, 1, 3, 1, l, c");
container.add(new JProgressBar(0, 100), "0, 2, 3, 2");
container.add(new JLabel("速度: 229K/s"), "0, 3, 2, 3, l, c");
container.add(new JLabel("229.00K/324.00K"), "2, 3, 3, 3, r, c");
container.add(new JLabel("取消"), "3, 4, 3, 4, r, c");
container.add(new JLabel("发送离线文件"), "0, 4, 2, 4, r, c");


setDefaultCloseOperation(EXIT_ON_CLOSE);
pack();
setSize(250, getSize().height); // 设置窗口的大小
setResizable(false);
setLocationRelativeTo(null);
setVisible(true);
}

public static void main(String[] args) {
JFrame frame = new SwingDemo();
// Grid.showGrid(frame.getContentPane());
}
}
magic_kid_2010 2013-01-29
  • 打赏
  • 举报
回复
引用 8 楼 Inhibitory 的回复:
TableLayout布局这个非常简单,比GridBagLayout简单很多。 可以去看看
亲,可以先给出实现代码吗?看了也不一定会用。。。
Inhibitory 2013-01-29
  • 打赏
  • 举报
回复
TableLayout布局这个非常简单,比GridBagLayout简单很多。 可以去看看
ace62 2013-01-29
  • 打赏
  • 举报
回复
多用一级JPanel也可以,这样同级的JPanel可以一个左对齐,一个右对齐 如果整体的宽度不变的话,也可以使用绝对布局
Inhibitory 2013-01-29
  • 打赏
  • 举报
回复
引用 9 楼 magic_kid_2010 的回复:
引用 8 楼 Inhibitory 的回复:TableLayout布局这个非常简单,比GridBagLayout简单很多。 可以去看看亲,可以先给出实现代码吗?看了也不一定会用。。。
看都不看就知道不一定会
magic_kid_2010 2013-01-28
  • 打赏
  • 举报
回复
引用 1 楼 Cecil_911 的回复:
GridBagLayout,这个可以满足你的要求
亲,帮忙贴出代码吧。谢谢了。http://wenwen.soso.com/z/q428677088.htm?ch=ww.gr.dcltw.title&pid=ww.gr.dcltw.title
墙外程序猿 2013-01-26
  • 打赏
  • 举报
回复
GridBagLayout,这个可以满足你的要求
ceclinux 2013-01-26
  • 打赏
  • 举报
回复
GridBagLayout,这个可以满足你的要求
ceclinux 2013-01-26
  • 打赏
  • 举报
回复
引用 4 楼 magic_kid_2010 的回复:
引用 2 楼 walkerxian 的回复:GridBagLayout,这个可以满足你的要求亲,代码可以贴出来吗
这个很长,http://docs.oracle.com/javase/tutorial/uiswing/layout/gridbag.html
magic_kid_2010 2013-01-26
  • 打赏
  • 举报
回复
引用 2 楼 walkerxian 的回复:
GridBagLayout,这个可以满足你的要求
亲,代码可以贴出来吗
magic_kid_2010 2013-01-26
  • 打赏
  • 举报
回复
引用 1 楼 Cecil_911 的回复:
GridBagLayout,这个可以满足你的要求
亲,代码可以贴出来吗

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧