请教borderlayout布局

要求在一个JFrame放置三个JPanel上中下三个中JPane高为300上,下的JPanel而高分别为100请问borderlayout是不是不能实现,因为我如果这样做... 要求在一个JFrame放置三个JPanel
上中下三个
中JPane高为300
上,下的JPanel而高分别为100
请问borderlayout是不是不能实现,因为我如果这样做的话上,下JPanel会被中间的JPanel挤成一条线。
有没有其它布局能实现
展开
 我来答
tmcici
2013-04-07 · TA获得超过678个赞
知道小有建树答主
回答量:377
采纳率:0%
帮助的人:136万
展开全部
是可以的,borderlayout说白了就是东南西北中的布局。有一阵没写swing了,具体的属性记不太清楚,你这个现象可能和处于南边的Jpanel属性设置有关系。你可以查一下。可以肯定的是绝对没问题,我几年前就做过一个客户端,主页面类似于IE浏览器,下方有一个状态栏,显示时间、版本之类的信息,就是用的borderlayout
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
flylovepink
2013-04-07 · TA获得超过498个赞
知道小有建树答主
回答量:271
采纳率:0%
帮助的人:403万
展开全部
borderlayout 可以实现,但是,如果,你的窗体,在改变大小的时候,你的上中下,怎么改变高度?
java 的布局基本都是自适应的,你3个高都限制死了,改变高度的时候,肯定做不到 3个高度都不变的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
maye100
2013-04-07 · TA获得超过2650个赞
知道小有建树答主
回答量:1341
采纳率:100%
帮助的人:979万
展开全部
可以使用GridLayout布局,具体方法网上很多。
还有,如果你的窗体不需要拉伸,则可以使用空布局:
JPanel jp = new JPanel();
jp.setLayout(null);
然后使用:控件.setBounds(X, Y, 500, 300);坐标的方式进行定位
追问
我的窗体大小不变,所以目前采用的是无布局模式。

但是,我想让上下,的JPanel高为100,中间的随意变化,
这个能做到吗,你说的GridLayout就算分为三行一列,但中间的那一行高度也是固定的啊
追答
你的窗体大小不变,上下面板都是高100,那中间的面板好像没机会会变化吧?

实在不行就自己写个自适应的方法,例如每次上下面板高度改变,都在最后调用一个你自己写的方法,参数是上下面板高度和窗体高度,自己算一下改变之后中间应该多高就行了。

再好点就是把这方法放事件里。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式