我不知道是否有可能以現有的javax.swing.text.HTMLDocument
分配給JEditorPane
或JTextPane
,使用setDocument()
方法,但使用代碼完成和所有顯示源代碼。它也應該允許修改它,以便同步2個不同的視圖(我已經有一個jEditor進行設計)。如何將HTMLDocument分配到JEditorPane中以修改爲源代碼?
如何將HTMLDocument
分配到JEditorPane
修改爲源代碼?
我不知道是否有可能以現有的javax.swing.text.HTMLDocument
分配給JEditorPane
或JTextPane
,使用setDocument()
方法,但使用代碼完成和所有顯示源代碼。它也應該允許修改它,以便同步2個不同的視圖(我已經有一個jEditor進行設計)。如何將HTMLDocument分配到JEditorPane中以修改爲源代碼?
如何將HTMLDocument
分配到JEditorPane
修改爲源代碼?
你可以試試這個: 它不使用setDocument()
,但會顯示源代碼
JTextPane jtPane = new JTextPane();
StringBuilder st = new StringBuilder();
String s;
try {
FileInputStream f = new FileInputStream("abc.html");
BufferedReader reader = new BufferedReader(new InputStreamReader(f));
while((s=reader.readLine())!=null){
st.append(s);
}
jtPane.setText(st.toString());
}
catch (Exception e)
{
e.printStackTrace();
}
這一次使用Document
和setDocument()
:
String s;
Document doc = jp2.getDocument();
try {
FileInputStream f = new FileInputStream("abc.html");
BufferedReader reader = new BufferedReader(new InputStreamReader(f));
while((s=reader.readLine())!=null){
doc.insertString(doc.getLength(), s+"\n", null);
}
jtPane.setDocument(doc);
這就是不是我正在尋找的東西......讓我澄清一下:我已經構建了一個複雜的wysimolwyg編輯器(你看到的,或多或少都是你所得到的)......而且我已經爲它做了一個代碼視圖,但爲了「同步」這兩個視圖,我所做的只是調用setText()方法,給出了完整的html代碼的參數,但是這樣做,我有2個不同的文檔對象...至少...因爲每當我在「視圖」之間切換,此方法使用修改的字符串構建一個新的文檔對象...所以,我一直試圖在兩個編輯器上使用同一個文檔來顯示源代碼。 – ThanatosMK 2012-04-25 20:13:52
我相信這是可能的。你在尋找什麼樣的答案? – ControlAltDel 2012-04-25 18:08:23
感謝您的回覆...我正在尋找一個單一的例子或鏈接到一些文件,我可以閱讀如何做到這一點...我已經做了很多測試,但我只是不能做到這一點 – ThanatosMK 2012-04-25 19:21:58