我想JPanel在运行时添加垂直堆叠的不同按钮,并使用一个JScrollPane按钮以便所有按钮都可见(通过一些滚动).
为了做到这一点,我已将我添加JPanel到a JScrollPane,然后我将按钮添加到我的JPanel.
但是,当我这样做时,垂直滚动条不允许我看到所有图像.例如,当我添加7个按钮时,我只能滚动查看5个完整图像和6个图像中的一半.
为什么我的滚动条不允许我显示所有7个按钮?
创建面板和滚动窗格,如:
JPanel panel = new JPanel();
JScrollPane scrollPane = new JScrollPane( panel );
Run Code Online (Sandbox Code Playgroud)
在运行时向面板添加按钮时,代码应为:
panel.add( button );
panel.revalidate();
Run Code Online (Sandbox Code Playgroud)
只要您使用布局管理器,将重新计算首选大小并显示滚动条.