Java SWT样式文本绘制框
我试图在StyledText小部件中画一个框来包围我的文本。我正在使用以下代码,但失败了。我知道这是可以做到的,因为我发现我已经尝试和工作的样本。我错过了什么Java SWT样式文本绘制框,java,swt,styledtext,Java,Swt,Styledtext,我试图在StyledText小部件中画一个框来包围我的文本。我正在使用以下代码,但失败了。我知道这是可以做到的,因为我发现我已经尝试和工作的样本。我错过了什么 public void print(Display display) { Shell shell = new Shell(display); shell.setLayout(new FillLayout()); shell.setSize(500, 500); StyledText st=new Sty
public void print(Display display) {
Shell shell = new Shell(display);
shell.setLayout(new FillLayout());
shell.setSize(500, 500);
StyledText st=new StyledText(shell,SWT.BORDER);
shell.open();
//line one
String one=String.format("Character Name: %-25s Player Name: ___________________________\n",WordUtils.capitalize(name));
st.setText(one);
Point topLeft=st.getLocationAtOffset(0);
GC gc=new GC(st.getShell());
gc.setForeground(display.getSystemColor(SWT.COLOR_RED));
gc.drawRectangle(topLeft.x - 1, topLeft.y, 20, 15);
gc.dispose();
}
在过去的任何时候都不能只在控件上绘制,绘制只能在控件的绘制事件处理程序中完成。现有的事件处理程序将覆盖您绘制的内容。可能会有帮助:-您的矩形将绘制在填充
Shell的样式文本
后面。