gpt4 book ai didi

java - JScrollPane 问题

转载 作者:行者123 更新时间:2023-12-04 06:25:58 27 4
gpt4 key购买 nike

我在 jtabbedpane 中添加了一个 jscrollpane,并且在 jscrollbar Pane 内我有一个 jpanel。在 jpanel 中,我有几个在运行时创建的按钮。我的想法是当我在运行时动态添加的按钮大小增加时,它会得到一个滚动条。我不能让它发生。按钮大小会增加,当大小超出 jpanel 的 View 时它会隐藏。我正在使用 setSize() 增加 jpanel 的大小和其中的按钮。我也使用过 jScrollPane2.setViewportView(Jpanel1);设置视口(viewport) View 。

维度 t_size = table_button.getSize();
table_button.setSize((int)t_size.getWidth(), (int) (t_size.getHeight() + 150));
矩形边界 = global_variables.bottom_panel.getBounds();
int y_new = (int) (bounds.getY() + 150);
int x_new = (int) bounds.getX();
bounds.setLocation(x_new, y_new);
global_variables.bottom_panel.setBounds(bounds);
floor_plan_admin_single.table_base.setSize((int)floor_plan_admin_single.table_base.getWidth(), (int)floor_plan_admin_single.table_base.getHeight()+150);

这里 table_button 是我动态添加的按钮, global_variables.bottom_panel 是保持在 table_button 下方的面板,当我增加 table_button 的高度时,我正在向下移动 bottom_panel。 floor_plan_admin_single.table_base 是添加到滚动条的 jpanel。即使我改变了 tat table_base 面板的高度,我也看不到滚动条的 Action 。

最佳答案

使用 JScrollPane 时需要注意一些事项。初始化 JScrollPanel 的最简单方法是在构造函数中传递要使其可滚动的面板。

JScrollPane scrollPane = new JScrollPane(panel1);

然后,要设置大小,您必须使用 setPreferredSize,而不是 setSize()。
button.setPreferredSize(new Dimension(120, 120));

不要在 JScrollPane 的构造函数中给定的面板上设置大小。 (即面板1)

关于java - JScrollPane 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6037156/

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