2015-12-03 45 views
0

我試圖爲文本編輯器創建一個大膽的函數,但我不知道如何設置下一個文本以鍵入粗體格式(我只是想很清楚,這是不是選定的文本設置爲黑體,而不是設置你在未來的粗體文字),我試圖如何將下一個文本設置爲粗體動作偵聽器[java]

JEditorPane feild2 = new JEditorPane("text/html",""); 
JButton Button=new JButton("B"); 
Button.addActionListener(new ActionListener(){ 

@Override 
public void actionPerformed(ActionEvent arg4) { 
    int e=0; 
    if(arg4.getSource()==Button&&e==0){ 
     feild2.setText(feild2.getText()+ "<b>"); 
     e=1; 
    } 
    else if(arg4.getSource()==Button&&e==1){ 
     feild2.setText(feild2.getText()+ "</b>"); 
     e=0; 
    } 
} 

}); 

但不能正常工作。有什麼建議麼?如果您點擊與選定的文本,然後將文本進行了大膽的按鈕

JButton button = new JButton(new StyledEditorKit.BoldAction()); 

+1

您認爲這可以工作嗎?在按下按鈕時,它只是粗體顯示文本。沒有代碼可以聽取未來的文本並使其粗體。 –

+1

我會從[如何使用編輯器窗格](https://docs.oracle.com/javase/tutorial/uiswing/components/editorpane.html)和[文本組件功能](http://docs.oracle.com你可以看看[這個例子](http://stackoverflow.com/questions/32241960/make-a-selected-word-bold-這個示例](http://www.java2s.com/Tutorial/Java/0240__Swing/SimpleAttributeBoldItalic.htm)和[本示例](http://www.java2s.com/Tutorial/Java/0240__Swing/SimpleAttributeBoldItalic.htm) //www.java2s.com/Tutorial/Java/0240__Swing/EditorbasedonJTextPane.htm) – MadProgrammer

+1

請記住,'setText'說,「扔掉以前的文本內容並應用這個新的文本」 – MadProgrammer

回答

2

使用由StyledEditorKit提供的默認動作。

如果在未選中文本的情況下單擊按鈕,插入插入符號的文本將變爲粗體。

相關問題