我有一個自定義HTML文檔(而不是從URL)一個JScrollPane內,和一個JTextField,使用戶可以輸入隨後將在編輯器窗格中突出顯示的文件的JEditorPane。在文本框的keyPressed事件,我在文檔中搜索文本,與圍繞着它:的Java scrollToReference引起例外的JEditorPane
<a name='spot'><span style='background-color: silver'>my text</span></a>
突出的背景下,然後將新文本對JEditorPane。這一切正常,但我也想滾動窗格到新突出顯示的文本。因此,在編輯器面板的的DocumentListener的方法的changedUpdate,我補充一下:
pane.scrollToReference("spot");
該調用拋出內部BoxView.modelToView一個ArrayIndexOutOfBoundsException。該方法查找文本我的「斑」的提法,但我想,也許鑑於尚未與新的文本尚未更新,所以當它試圖在那裏滾動,它失敗。
我不能去的觀點的引用,我似乎無法找到一個事件偵聽這意味着對JEditorPane的觀點是完全更新。有任何想法嗎?
謝謝,
賈裏德
所有例子從中HTMLEditorKit類型,更好的是用[SSCCE](http:// ssc。)更新你的問題ce.org/)引起的'ArrayIndexOutOfBoundsException' – mKorbel 2012-04-10 16:10:28
我並沒有改變任何一個HTMLEditorKit,所以無論是一個JEditorPane的默認。 – Jared 2012-04-10 16:44:11
沒有SSCCE我無法找到您的問題,抱歉不包括電池,也許一些人可以... – mKorbel 2012-04-10 17:11:08