Draw string and processing newlines and expanding tabs : Draw String « SWT 2D Graphics « Java Tutorial






void drawText(String text, int x, int y, int flags)

Uses the rules specified by flags.

ConstantDescription
SWT.DRAW_DELIMITERProcesses newlines by drawing subsequent characters on the next line.
SWT.DRAW_TABProcesses tabs by displaying a gap between surrounding characters.
SWT.DRAW_MNEMONICDraws an underline beneath the mnemonic character-the character preceded by an ampersand (&). Use this when drawing menus.
SWT.DRAW_TRANSPARENTWith a transparent background:


Draw string and processing newlines and expanding tabs
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.PaintEvent;
import org.eclipse.swt.events.PaintListener;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Canvas;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;

public class DrawTextUnderLineSWT {
  public static void main(String[] args) {
    final Display display = new Display();
    Shell shell = new Shell(display);
    shell.setText("Canvas Example");
    shell.setLayout(new FillLayout());

    Canvas canvas = new Canvas(shell, SWT.NONE);

    canvas.addPaintListener(new PaintListener() {
      public void paintControl(PaintEvent e) {
        e.gc.drawText("www.\n&java2s\t.com", 5, 5, SWT.DRAW_MNEMONIC | SWT.DRAW_DELIMITER
            | SWT.DRAW_TAB | SWT.DRAW_TRANSPARENT);
      }
    });

    shell.open();
    while (!shell.isDisposed()) {
      if (!display.readAndDispatch()) {
        display.sleep();
      }
    }
    display.dispose();
  }
}








18.14.Draw String
18.14.1.Draw string and display newlines and tabs as nonprintable characters.Draw string and display newlines and tabs as nonprintable characters.
18.14.2.String with new line and tabString with new line and tab
18.14.3.Draw string and display newlines and tabs as nonprintable characters: isTransparentDraw string and display newlines and tabs as nonprintable characters: isTransparent
18.14.4.Draw string and process newlines and expanding tabs: drawText(String text, int x, int y)Draw string and process newlines and expanding tabs: drawText(String text, int x, int y)
18.14.5.Draw string and process newlines and expanding tabs: drawText(String text, int x, int y, boolean isTransparent)Draw string and process newlines and expanding tabs: drawText(String text, int x, int y, boolean isTransparent)
18.14.6.Draw string and processing newlines and expanding tabsDraw string and processing newlines and expanding tabs
18.14.7.Get the extent of a string
18.14.8.Measure a String