Java osx上可能存在swt StyledText错误
我对swt样式的文本有一个问题,其中文本的一部分必须着色 在MAC OSX上使用以下代码(在windows上工作正常)时,输入多个顺序“f”字符会出现问题。当“f”后面跟一个“i”或“l”时,总有一个问题。除此之外,没有问题Java osx上可能存在swt StyledText错误,java,macos,swt,styledtext,Java,Macos,Swt,Styledtext,我对swt样式的文本有一个问题,其中文本的一部分必须着色 在MAC OSX上使用以下代码(在windows上工作正常)时,输入多个顺序“f”字符会出现问题。当“f”后面跟一个“i”或“l”时,总有一个问题。除此之外,没有问题 editboxFreeSpt2 = new StyledText(grpSoundsLike, SWT.BORDER | SWT.SINGLE); editboxFreeSpt2.addModifyListener(new ModifyListener
editboxFreeSpt2 = new StyledText(grpSoundsLike, SWT.BORDER | SWT.SINGLE);
editboxFreeSpt2.addModifyListener(new ModifyListener()
{
public void modifyText(ModifyEvent e)
{
editboxFreeSpt2.setStyleRanges(new StyleRange[0]);
StyleRange newStyleRange = new StyleRange();
newStyleRange.start = editboxFreeSpt2.getText().length() - 1;
newStyleRange.length = 1;
newStyleRange.foreground = red;
editboxFreeSpt2.setStyleRange(newStyleRange);
}
});
editboxFreeSpt2.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
因此,问题在于,当样式范围设置正确时,最后一个f/i/l字符并不总是像它应该的那样着色。
我将osx 10.7.5与eclipse helios org.eclipse.swt.cocoa.macosx.x86_64_3.6.2.v3659b.jar一起使用
所以我认为这可能是SWT或OSX本机组件中的一个bug。
修复此bug或使用黑客来覆盖它的最佳方法是什么?在OS X 10.9、Eclipse开普勒上进行测试看起来还行。这很可能取决于字体。这似乎确实与字体有关,而其他字体则不会出现问题。