我想根據用戶需要將我寫入的文本(和字體顏色)更改爲另一種顏色。如何更改JTextPane中的文本顏色
我做了一個JFrame,並添加了JTextPane。在TextPane的右側,我有一個不同顏色的列表(「白色」,「黑色」,「綠色」等)。 Jframe還有一個JMenuBar,如果用戶突出顯示列表中的其中一個元素(說黑色),我想更改文本窗格的背景顏色(我知道這很愚蠢,但是這是我們老師的任務)
雖然問題是,文字是黑色的,所以當我改變背景顏色時,文字「消失」。當背景顏色設置爲黑色時,我想將文本更改爲白色。
這是一種奇怪的,我可以寫
textPane.setForeground(Color.White)
在構造
,它工作正常。文本是白色的,(或綠色,或者我選擇的任何顏色) 但是當我將它添加到我的ActionListener中時,它不起作用?我該如何解決它?
這裏是我的代碼:
if (e.getSource().equals(changeColor)) {
if (list.getSelectedValue().equals("White")) {
textPane.setForeground(Color.BLACK);
textPane.setBackground(Color.WHITE);
}
if(list.getSelectedValue().equals("Black")){
textPane.setForeGround(Color.WHITE);
textPane.setBackground(Color.BLACK);
}
}
http://stackoverflow.com/questions/9650992/how-to-change-text-color- in-the-jtextarea標題是關於'JTextArea',但答案是關於'JTextPane'。看一看。 –