动态调整 JPanel 的大小以适应窗口的宽度

发布于 2024-12-15 01:18:02 字数 149 浏览 1 评论 0原文

我已经根据用户输入创建了任意数量的 JPanel(如 1-8 个面板)。现在,我使用 FlowLayout 将所有面板放入一个更大的面板中,然后将该面板添加到使用 BoxLayout 的主窗口中。我希望面板适合主窗口的宽度,但现在它们非常小。我应该使用不同的布局还是有办法做到这一点?

I've got an arbitrary number of JPanels being created based on user input (like 1-8 panels). Right now, I'm putting all the panels in a larger panel using FlowLayout, and then adding that panel to my main window which is using BoxLayout. I want the panels to fit the width of the main window but right now they are very small. Should I use a different layout or is there a way to do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

緦唸λ蓇 2024-12-22 01:18:02

您必须选择 GridLayoutGridBagLayout

You have to choose GridLayout or GridBagLayout.

染年凉城似染瑾 2024-12-22 01:18:02

是的,您应该使用不同的布局管理器。使用 BorderLayout(教程此处),它将所有内容拉伸到安装容器。

此外,BorderLayout 不允许每个区域中有多个组件,因此您将需要另一个子面板来容纳面板。不要为该子面板使用 FlowLayout,因为它不会具有您正在寻找的拉伸行为。

Yes, you should use a different layout manager. Use BorderLayout (tutorial here), which streches all the contents to fit the container.

Also, BorderLayout doesn't allow more than one component in each area, thus you will need another sub-panel to hold your panels. Don't use FlowLayout for that sub-panel, as it will not have the streching behaviour your are looking for.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文