gpt4 book ai didi

java - 如何限制在窗体或面板的边框内动态添加组件

转载 作者:行者123 更新时间:2023-12-02 09:47:22 25 4
gpt4 key购买 nike

我正在尝试从数据库动态地将组件添加到 jpanel,一个接一个,但是它们水平超出了表单(甚至屏幕)的限制。我正在使用带有 BoxLayout 的面板,它将内部组件定位在 x 轴上。我想做的是限制在表单边框(或容器面板边框)的 x 轴上添加组件。到目前为止我尝试过的是:

  • 设置最大尺寸(宽度)容器 jpanel 但没有工作。
  • 将布局管理器设置为flowlayout,但它也扩展了在 x 轴上无限。
  • 将容器面板放置在滚动 Pane 。这使得一个巨大的水平滚动条,这意味着它不限制组件表单的边框。

我应该制作自定义布局吗?还有比这更简单的想法吗?我的代码如下所示:

jpanelCases.setLayout(new BoxLayout(this.jpanelCases, BoxLayout.X_AXIS));
db = Database.getInstance();
List<Category> cats = db.getCategories();
for(Category c : cats){
JPanel jp = new JPanel();
//addition of other components to the newly created panel here
jpanelCases.add(jp);
}

最佳答案

however they extend beyond the limits of the form (and even the screen) horizontally.

那么在这种情况下你想做什么:

a) 只是忽略组件而不将它们添加到框架中b) 在新行上显示组件

如果答案是“b”,请尝试 WrapLayout .

关于java - 如何限制在窗体或面板的边框内动态添加组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6474140/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com