2013-10-30 52 views
0

我想让我的滚动窗格上的滚动条工作。最初我的窗格只是一个加载网页的编辑器窗格。然而,我做了研究,发现你不能将滚动条原生地添加到那种jSwing元素中。所以,我制作了一个jScrollPane并添加了一个jEditorPane。一切都很好,除非我不知道为什么没有滚动条出现,而且窗格完全不可滚动。任何帮助非常感谢,谢谢。如果强制通过JScrollPane的视口的大小相同JScrollPane中所保持的部件的尺寸Java jScrollPane不显示scollbars

public Main() { 
    initComponents(); 
    scrollWeb.add(editorWeb); 
    editorWeb.setEditable(false); 
    editorWeb.setSize(scrollWeb.getWidth(), scrollWeb.getHeight()); 
    try { 
     editorWeb.setPage("http://www.futureretrogaming.tk/news.html"); 
    } catch (IOException ex) { 
     Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex); 
    } 

} 
+0

我并没有这样做。我会试一试 – Kyle

+0

@凯尔,没有必要使用这种方法。所有这些方法都是重新滚动条的空间并且总是绘制它。除非正确创建滚动窗格并且添加到滚动窗格的组件的首选大小大于滚动窗格的大小,否则它将不起作用。 – camickr

+0

感谢您的评论,亚最好的方法是下面的一个。 – Kyle

回答

3

scrollWeb.add(editorWeb);

不要将组件添加到滚动窗格。这一翻译组件添加到滚动的视口:

scrollWed.setViewportView(editorWeb); 

或者,当你创建滚动窗格可以使用:

scrollWeb = new JScrollPane(editorWed); 
2

什么都不会滚动:

editorWeb.setSize(scrollWeb.getWidth(), scrollWeb.getHeight()); 

只需简单地不这样做,因为这限制了大小的JEditorPane是JScollPane的尺寸,不大,所以它永远不会扩展。取而代之的是让editorWeb根据其内容来做更大的尺寸。