【发布时间】:2011-07-19 19:14:19
【问题描述】:
我一直在尝试将 JScrollPane 与我的小程序一起使用,但它不起作用。我有一个 JPanel,我向其中添加了 20 个按钮,并且我希望能够上下滚动这个 JPanel。相反,滚动条不会出现。当我使用 setPreferredSize 时,它们仍然没有出现,即使只显示了大约 3 个按钮,其余的都被切断了。如果我不使用 setPreferredSize,则可能没有任何滚动条,因为我必须使窗口足够大才能看到所有按钮。如果我尝试使滚动条始终可见,它们会出现但什么也不做。我用 JFrame 而不是 Applet 尝试了完全相同的代码,它工作正常,但我需要它是一个 applet。 JScrollPane 与小程序不兼容吗? (注意:我尝试使用外部 JPanel 并向其添加可滚动面板,但它没有改变)。更改布局也不能解决问题。我附上了我的代码的简化版本,但它显示相同的错误。
这是我的代码:
JPanel scrollPanel = new JPanel();
scrollPanel.setLayout(new BoxLayout(scrollPanel, BoxLayout.PAGE_AXIS));
JScrollPane scroll = new JScrollPane(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
for (int i = 0; i < 20; i++) scrollPanel.add(new JButton("Button " + i));
add(scrollPanel);
validate();
【问题讨论】:
-
一些代码会有所帮助..JScrollPane 是您需要使用的。所以基本上你只需将你想要的滚动功能添加到滚动窗格中,然后将滚动窗格添加到主容器中。再次,显示一些代码来知道你哪里出错了
-
什么是错误消息..我现在看到你的问题
-
没有错误消息,只是没有按应有的方式工作。
标签: java swing applet scroll jscrollpane