2013-10-30 2 views
0

스크롤 창에서 스크롤 막대가 작동하도록하려고합니다. 원래 내 창은 웹 페이지를로드 한 편집기 창이었습니다. 그러나, 나는 연구를 수행하여 스크롤 막대를 기본적으로 그런 종류의 jSwing 요소에 추가 할 수 없다는 것을 알게되었습니다. 그래서 jScrollPane을 만들고 jEditorPane을 추가했습니다. 스크롤 막대가 나타나지 않고 창을 완전히 스크롤 할 수없는 이유를 알아낼 수 없다는 것을 제외하면 모든 것이 효과적입니다. 어떤 도움이라도 대단히 감사합니다. 감사합니다.Java jScrollPane에 scollbars가 표시되지 않습니다.

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

그냥 간단하게이 작업을 수행하지 않는이 크기를 제한합니다 이후 : 당신이 JScrollPane의 같은 크기로 JScrollPane의 뷰포트에서 개최 된 구성 요소의 크기를 강제하는 경우

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);

스크롤 패널에 구성 요소를 추가하지 마십시오. 당신은 스크롤의 뷰포트에 구성 요소를 추가 Intead : 당신은 스크롤을 만들 때

scrollWed.setViewportView(editorWeb); 

또는, 당신은 사용할 수 있습니다 : 나는 그렇게하지 않았다

scrollWeb = new JScrollPane(editorWed); 
2

아무것도 이동하지 않습니다 JEditorPane의 크기는 JScollPane의 크기보다 크지 않으므로 확장되지 않습니다. 대신 editorWeb의 내용을 기준으로 더 큰 크기가되도록하십시오.

관련 문제