jtextpane syntax highlight问题# Java - 爪哇娇娃
b*i
1 楼
我现在做了一个文本编辑器,用于BASIC语言等。
这个编辑器可以把关键字变蓝色并变粗体,字符串变粉红,没有右边引号的字符串变红
,注释变绿
很简单吧?
作了一个函数叫processtext(int start, int length),在keyreleased里调用。
经常死机,就是程序不继续执行了。
于是我用了一个semaphore light来控制process不能重入
@Override
public void keyReleased(KeyEvent e) {
if (changed){
int pos = getCaretPosition();
Element elem = Utilities.getParagraphElement((JTextComponent)e.getSource
(), pos);
int start = elem.getStartOffset();
int end = elem.getEndOffset();
try {
light.acquire();
process(sta
这个编辑器可以把关键字变蓝色并变粗体,字符串变粉红,没有右边引号的字符串变红
,注释变绿
很简单吧?
作了一个函数叫processtext(int start, int length),在keyreleased里调用。
经常死机,就是程序不继续执行了。
于是我用了一个semaphore light来控制process不能重入
@Override
public void keyReleased(KeyEvent e) {
if (changed){
int pos = getCaretPosition();
Element elem = Utilities.getParagraphElement((JTextComponent)e.getSource
(), pos);
int start = elem.getStartOffset();
int end = elem.getEndOffset();
try {
light.acquire();
process(sta