首页 热点资讯 义务教育 高等教育 出国留学 考研考公

JAVA 获取父容器的大小问题

发布网友 发布时间:2024-12-25 16:57

我来回答

1个回答

热心网友 时间:2分钟前

如果你想要得到一个元件_排版后_的大小,就需要先进行排版。排版时调用的是preferred size(期望大小)
jf.setPreferredSize(new Dimension(500, 500));
jf.pack(); //进行排版
jta.getParent().getWidth() //484 //这里因为窗口有边界所以文本框小了

不过这里你会发现不管你怎么设置大小,例如
setSize()
setPreferredSize()
setBounds()
setMaximumSize()
你的文本框都会顽固的占用窗口全部大小。这是因为BorderLayout会忽视center部件的大小,强制最大化。

如果你只是想要给文本框加一个白边,可以这样
jp.setBorder(new EmptyBorder(10, 20, 30, 40)); //分别是 上,左,下,右

如果你想要更复杂的,就需要使用BorderLayout之外的布局。具体是什么要根据你的需要。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com