Set two Different styles : StyledText Style « SWT « Java Tutorial






Set two Different styles
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.StyleRange;
import org.eclipse.swt.custom.StyledText;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;

public class SetDifferentStyles {
  public static void main(String[] args) {
    final Display display = new Display();
    final Shell shell = new Shell(display);

    final StyledText styledText = new StyledText(shell, SWT.V_SCROLL | SWT.BORDER);
    styledText.setText("asdfasdfasdfasdf12345678910234567890");

    // Turn all of the text orange, with the default background color
    styledText.setStyleRange(new StyleRange(0, 9, display.getSystemColor(SWT.COLOR_GREEN), null));
    // Turn "Gators" blue
    styledText.setStyleRange(new StyleRange(3, 6, display.getSystemColor(SWT.COLOR_WHITE), null));

    styledText.setBounds(10, 10, 500, 100);
    shell.open();
    while (!shell.isDisposed()) {
      if (!display.readAndDispatch()) {
        display.sleep();
      }
    }
    display.dispose();
  }
}

Colors used must be valid (not disposed) for the life of the StyleRanges. The offsets and lengths of the StyleRanges must be within the range of existing text-when created.









17.43.StyledText Style
17.43.1.Using StyleRanges
17.43.2.StyleRange Constructors
17.43.3.Compare StyleRange
17.43.4.Set a single StyleRange into a StyledTextSet a single StyleRange into a StyledText
17.43.5.Set two Different stylesSet two Different styles
17.43.6.Store StyleRanges into an array, and called setStyleRanges()Store StyleRanges into an array, and called setStyleRanges()
17.43.7.replaceStyleRanges(): specifies which portion of the StyledText to repaintreplaceStyleRanges(): specifies which portion of the StyledText to repaint
17.43.8.Dynamic syntax coloring
17.43.9.Make Text BoldMake Text Bold
17.43.10.Make text appear underlinedMake text appear underlined
17.43.11.Use rise and font with StyleRangeUse rise and font with StyleRange
17.43.12.Change the backgroundChange the background
17.43.13.Change the Foreground colorChange the Foreground color
17.43.14.Make text appear strikeoutMake text appear strikeout
17.43.15.StyledText: set line backgroundStyledText: set line background
17.43.16.Using LineBackgroundListenerUsing LineBackgroundListener