我在看到jscrollpane中调整jpanel大小时遇到问题。这是我的代码:
for (String Id : SearchResultsMap.keySet())
{
JButton IdPanelButton = CreateIdPanelButton(Id);
IdListPanel.add(IdPanelButton);
IdPanelButton.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e)
{
ClearRecordDetails();
setRecordDetails(SearchResultsMap.get(Id));
}
});
}
IdListPanel.setPreferredSize(new Dimension(IdListPanel.getWidth(), (int) (SearchResultsMap.size()* CreateIdPanelButton("").getHeight())));
IdListPanel.validate();
我基本上在做的是生成供用户单击的按钮列表,然后将显示一些信息。 CreatIdPanelButton只是创建一个具有视觉约束的新jbutton。我有的问题是,即使我尝试设置首选大小,IdListPanel也没有调整大小。我还尝试过重新验证jscrollpane,但该方法不起作用。任何人都可以在可见时更新jscrollpane视口吗?
问题可能是您已初始化指定的大小,请尝试指定大小。
如果不是,您需要显示您引用的代码,因为其他地方可能存在一些错误,我看不到。