对于我的应用程序,我将在我的文本框中进行语法突出显示。我不确定的是,如何在一个盒子里做多色而不是一个颜色。
我知道我可以这样做,但它会将所有文字设置为一种颜色。
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package ssccee;
import java.awt.Color;
import java.awt.Font;
import javax.swing.JFrame;
import javax.swing.JTextArea;
/**
*
* @author ryannaddy
*/
public class Sscce extends JFrame{
JTextArea txt = new JTextArea();
public Sscce(){
setLayout(null);
txt.setBounds(3, 3, 300, 200);
add(txt);
Font font = new Font("Verdana", Font.BOLD, 12);
txt.setFont(font);
txt.setForeground(Color.BLUE);
txt.setText("\n \n JTextArea font & color change example");
}
public static void main(String[] args){
Sscce jtxt = new Sscce();
jtxt.setSize(313, 233);
jtxt.setTitle("JTextArea font & color settings");
jtxt.show();
}
}
那么,我该怎么做呢?
答案 0 :(得分:0)
JTextArea
是纯文本组件。它可以显示不同字体的文本,但所有文本都使用相同的字体。您希望使用JSyntaxPane之类的内容。
使用和扩展JEditorKit非常简单,支持几种语言。主要目标是让拥有漂亮外观的Java Swing编辑器变得容易,并支持语法高亮显示。