import javax.swing.*;
import java.awt.*;
import javax.swing.text.*;
public class TpHighlight extends JFrame {
String tf_str="Hello this is a demo for High Lighting";
JTextField tef;
DefaultHighlighter high = new DefaultHighlighter();
DefaultHighlighter.DefaultHighlightPainter highlight_painter =
new DefaultHighlighter.DefaultHighlightPainter(
new Color(198,198,250));
SimpleAttributeSet set=new SimpleAttributeSet();
public TpHighlight () {
tef=new JTextField(12);
getContentPane().add(tef,BorderLayout.NORTH);
getContentPane().add(new JLabel(
"Hello,this is a simple JTextPane Demo!"),
BorderLayout.CENTER);
tef.setText(tf_str);
tef.setEditable(false);
tef.setHighlighter(high);
try{
high.addHighlight(6,10,highlight_painter);
high.addHighlight(16,20,highlight_painter);
high.addHighlight(25,29,highlight_painter);
}
catch(Exception ignoreMe) {}
setSize(250,120);
setVisible(true);
}
public static void main(String[] args) {
new TpHighlight();
}
}
import java.awt.*;
import javax.swing.text.*;
public class TpHighlight extends JFrame {
String tf_str="Hello this is a demo for High Lighting";
JTextField tef;
DefaultHighlighter high = new DefaultHighlighter();
DefaultHighlighter.DefaultHighlightPainter highlight_painter =
new DefaultHighlighter.DefaultHighlightPainter(
new Color(198,198,250));
SimpleAttributeSet set=new SimpleAttributeSet();
public TpHighlight () {
tef=new JTextField(12);
getContentPane().add(tef,BorderLayout.NORTH);
getContentPane().add(new JLabel(
"Hello,this is a simple JTextPane Demo!"),
BorderLayout.CENTER);
tef.setText(tf_str);
tef.setEditable(false);
tef.setHighlighter(high);
try{
high.addHighlight(6,10,highlight_painter);
high.addHighlight(16,20,highlight_painter);
high.addHighlight(25,29,highlight_painter);
}
catch(Exception ignoreMe) {}
setSize(250,120);
setVisible(true);
}
public static void main(String[] args) {
new TpHighlight();
}
}
本文提供了一个使用 Java Swing 实现文本高亮显示的简单示例代码。该示例通过 JTextField 控件展示如何对特定文本进行颜色高亮处理。代码中详细展示了如何设置高亮的颜色范围以及如何禁用文本编辑。
7747

被折叠的 条评论
为什么被折叠?



