[swing]布局时,实现上对齐?

jiangshachina 2009-09-09 04:13:38
有一组JPanel,它们的(preferred)高度不同。现在要将它们放到同一个Container中,希望让它们上对齐,请问如何实现?
我目前使用FlowLayout,但它会将这些JPanel居中对齐。
...全文
231 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
ace62 2009-09-09
  • 打赏
  • 举报
回复
假设有n个Panel需上对齐
可将它们放入n个Panel(可用GridLayout,若width相等的话),这些panel采用BorderLayout,设置为CENTER,将那n个放入
dz007 2009-09-09
  • 打赏
  • 举报
回复
就我能想到的就只有null 或者 GridBagLayout 可以实现,而且应该用GridBagConstraints.CENTER,让他们垂直居中
zhuyang7654321 2009-09-09
  • 打赏
  • 举报
回复
上对齐是什么意思啊?

FlowLayout有几个属性值,你试试。

FlowLayout.[CENTER | LEADING | LEFT | RIGHT | TRAILING]

具体是什么意思看API文档就知道了。
dajiadebeibei9 2009-09-09
  • 打赏
  • 举报
回复
一楼说错了 应该是BorderLayout将容器分成了5个区域 默认是CENTER
每个区域只能添加一个组件 加入多个 先前的被覆盖

楼主可以使用GridLayout 它将空间分成矩形网络 组件添加到单元格中 先从左到右 从上到下
你可以是定行数和列数 比如GridLayout(3,4)分成三行四列 你将你要对其的组件添加到一行中 我觉得就可以了
virginkj 2009-09-09
  • 打赏
  • 举报
回复
其实最简单的就是将所有JPanel用坐标定位 setBounds(int x,int y,int width, int hieght)
justinavril 2009-09-09
  • 打赏
  • 举报
回复
用GridBagLayout布局管理器的GridBagConstraints.NORTH 或者BoderLayout也可以

62,621

社区成员

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

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