0

我正在尝试在 StyledText 小部件中绘制一个框来包围我的文本。我正在使用以下代码并且失败了。我知道这是可以做到的,因为我发现我尝试过并工作过的样本。我错过了什么?

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();

}
4

0 回答 0