<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FSWT%2FStyledText_Event</id>
		<title>Java Tutorial/SWT/StyledText Event - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FSWT%2FStyledText_Event"/>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/SWT/StyledText_Event&amp;action=history"/>
		<updated>2026-04-07T04:37:22Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://jexp.ru/index.php?title=Java_Tutorial/SWT/StyledText_Event&amp;diff=2981&amp;oldid=prev</id>
		<title> в 17:44, 31 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/SWT/StyledText_Event&amp;diff=2981&amp;oldid=prev"/>
				<updated>2010-05-31T17:44:26Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 17:44, 31 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://jexp.ru/index.php?title=Java_Tutorial/SWT/StyledText_Event&amp;diff=2982&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/SWT/StyledText_Event&amp;diff=2982&amp;oldid=prev"/>
				<updated>2010-05-31T15:19:42Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==  Add Paint event listener to StyledText ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import org.eclipse.swt.SWT;&lt;br /&gt;
import org.eclipse.swt.custom.StyledText;&lt;br /&gt;
import org.eclipse.swt.widgets.Display;&lt;br /&gt;
import org.eclipse.swt.widgets.Event;&lt;br /&gt;
import org.eclipse.swt.widgets.Listener;&lt;br /&gt;
import org.eclipse.swt.widgets.Shell;&lt;br /&gt;
public class StyledTextPaint {&lt;br /&gt;
  static String SEARCH_STRING = &amp;quot;box&amp;quot;;&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    final Display display = new Display();&lt;br /&gt;
    Shell shell = new Shell(display);&lt;br /&gt;
    shell.setBounds(10, 10, 250, 250);&lt;br /&gt;
    final StyledText text = new StyledText(shell, SWT.NONE);&lt;br /&gt;
    text.setBounds(10, 10, 200, 200);&lt;br /&gt;
    text.addListener(SWT.Paint, new Listener() {&lt;br /&gt;
      public void handleEvent(Event event) {&lt;br /&gt;
          System.out.println(&amp;quot;paint&amp;quot;);&lt;br /&gt;
          &lt;br /&gt;
        &lt;br /&gt;
      }&lt;br /&gt;
    });&lt;br /&gt;
    shell.open();&lt;br /&gt;
    while (!shell.isDisposed()) {&lt;br /&gt;
      if (!display.readAndDispatch())&lt;br /&gt;
        display.sleep();&lt;br /&gt;
    }&lt;br /&gt;
    display.dispose();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Add Paint Object Listener ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
/*******************************************************************************&lt;br /&gt;
 * Copyright (c) 2000, 2006 IBM Corporation and others.&lt;br /&gt;
 * All rights reserved. This program and the accompanying materials&lt;br /&gt;
 * are made available under the terms of the Eclipse Public License v1.0&lt;br /&gt;
 * which accompanies this distribution, and is available at&lt;br /&gt;
 * http://www.eclipse.org/legal/epl-v10.html&lt;br /&gt;
 *&lt;br /&gt;
 * Contributors:&lt;br /&gt;
 *     IBM Corporation - initial API and implementation&lt;br /&gt;
 *******************************************************************************/&lt;br /&gt;
//package org.eclipse.swt.snippets;&lt;br /&gt;
/* &lt;br /&gt;
 * example snippet: StyledText bulleted list example&lt;br /&gt;
 *&lt;br /&gt;
 * For a list of all SWT example snippets see&lt;br /&gt;
 * http://www.eclipse.org/swt/snippets/&lt;br /&gt;
 * &lt;br /&gt;
 * @since 3.2&lt;br /&gt;
 */&lt;br /&gt;
import org.eclipse.swt.SWT;&lt;br /&gt;
import org.eclipse.swt.custom.Bullet;&lt;br /&gt;
import org.eclipse.swt.custom.PaintObjectEvent;&lt;br /&gt;
import org.eclipse.swt.custom.PaintObjectListener;&lt;br /&gt;
import org.eclipse.swt.custom.ST;&lt;br /&gt;
import org.eclipse.swt.custom.StyleRange;&lt;br /&gt;
import org.eclipse.swt.custom.StyledText;&lt;br /&gt;
import org.eclipse.swt.graphics.Font;&lt;br /&gt;
import org.eclipse.swt.graphics.GlyphMetrics;&lt;br /&gt;
import org.eclipse.swt.graphics.TextLayout;&lt;br /&gt;
import org.eclipse.swt.layout.FillLayout;&lt;br /&gt;
import org.eclipse.swt.widgets.Display;&lt;br /&gt;
import org.eclipse.swt.widgets.Shell;&lt;br /&gt;
public class StyledTextPaintObjectListener {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    Display display = new Display();&lt;br /&gt;
    Shell shell = new Shell(display);&lt;br /&gt;
    shell.setText(&amp;quot;StyledText Bullet Example&amp;quot;);&lt;br /&gt;
    shell.setLayout(new FillLayout());&lt;br /&gt;
    final StyledText styledText = new StyledText(shell, SWT.FULL_SELECTION | SWT.BORDER | SWT.WRAP&lt;br /&gt;
        | SWT.V_SCROLL);&lt;br /&gt;
    StringBuffer text = new StringBuffer();&lt;br /&gt;
    text.append(&amp;quot;Here is StyledText with some bulleted lists:\n\n&amp;quot;);&lt;br /&gt;
    for (int i = 0; i &amp;lt; 4; i++)&lt;br /&gt;
      text.append(&amp;quot;Red Bullet List Item &amp;quot; + i + &amp;quot;\n&amp;quot;);&lt;br /&gt;
    text.append(&amp;quot;\n&amp;quot;);&lt;br /&gt;
    for (int i = 0; i &amp;lt; 2; i++)&lt;br /&gt;
      text.append(&amp;quot;Numbered List Item &amp;quot; + i + &amp;quot;\n&amp;quot;);&lt;br /&gt;
    for (int i = 0; i &amp;lt; 4; i++)&lt;br /&gt;
      text.append(&amp;quot;Sub List Item &amp;quot; + i + &amp;quot;\n&amp;quot;);&lt;br /&gt;
    for (int i = 0; i &amp;lt; 2; i++)&lt;br /&gt;
      text.append(&amp;quot;Numbered List Item &amp;quot; + (2 + i) + &amp;quot;\n&amp;quot;);&lt;br /&gt;
    text.append(&amp;quot;\n&amp;quot;);&lt;br /&gt;
    for (int i = 0; i &amp;lt; 4; i++)&lt;br /&gt;
      text.append(&amp;quot;Custom Draw List Item &amp;quot; + i + &amp;quot;\n&amp;quot;);&lt;br /&gt;
    styledText.setText(text.toString());&lt;br /&gt;
    StyleRange style0 = new StyleRange();&lt;br /&gt;
    style0.metrics = new GlyphMetrics(0, 0, 40);&lt;br /&gt;
    style0.foreground = display.getSystemColor(SWT.COLOR_RED);&lt;br /&gt;
    Bullet bullet0 = new Bullet(style0);&lt;br /&gt;
    StyleRange style1 = new StyleRange();&lt;br /&gt;
    style1.metrics = new GlyphMetrics(0, 0, 50);&lt;br /&gt;
    style1.foreground = display.getSystemColor(SWT.COLOR_BLUE);&lt;br /&gt;
    Bullet bullet1 = new Bullet(ST.BULLET_NUMBER | ST.BULLET_TEXT, style1);&lt;br /&gt;
    bullet1.text = &amp;quot;.&amp;quot;;&lt;br /&gt;
    StyleRange style2 = new StyleRange();&lt;br /&gt;
    style2.metrics = new GlyphMetrics(0, 0, 80);&lt;br /&gt;
    style2.foreground = display.getSystemColor(SWT.COLOR_GREEN);&lt;br /&gt;
    Bullet bullet2 = new Bullet(ST.BULLET_TEXT, style2);&lt;br /&gt;
    bullet2.text = &amp;quot;\u2713&amp;quot;;&lt;br /&gt;
    StyleRange style3 = new StyleRange();&lt;br /&gt;
    style3.metrics = new GlyphMetrics(0, 0, 50);&lt;br /&gt;
    Bullet bullet3 = new Bullet(ST.BULLET_CUSTOM, style2);&lt;br /&gt;
    styledText.setLineBullet(2, 4, bullet0);&lt;br /&gt;
    styledText.setLineBullet(7, 2, bullet1);&lt;br /&gt;
    styledText.setLineBullet(9, 4, bullet2);&lt;br /&gt;
    styledText.setLineBullet(13, 2, bullet1);&lt;br /&gt;
    styledText.setLineBullet(16, 4, bullet3);&lt;br /&gt;
    styledText.addPaintObjectListener(new PaintObjectListener() {&lt;br /&gt;
      public void paintObject(PaintObjectEvent event) {&lt;br /&gt;
        Display display = event.display;&lt;br /&gt;
        StyleRange style = event.style;&lt;br /&gt;
        Font font = style.font;&lt;br /&gt;
        if (font == null)&lt;br /&gt;
          font = styledText.getFont();&lt;br /&gt;
        TextLayout layout = new TextLayout(display);&lt;br /&gt;
        layout.setAscent(event.ascent);&lt;br /&gt;
        layout.setDescent(event.descent);&lt;br /&gt;
        layout.setFont(font);&lt;br /&gt;
        layout.setText(&amp;quot;\u2023 1.&amp;quot; + event.bulletIndex + &amp;quot;)&amp;quot;);&lt;br /&gt;
        layout.draw(event.gc, event.x + 10, event.y);&lt;br /&gt;
        layout.dispose();&lt;br /&gt;
      }&lt;br /&gt;
    });&lt;br /&gt;
    shell.open();&lt;br /&gt;
    while (!shell.isDisposed()) {&lt;br /&gt;
      if (!display.readAndDispatch())&lt;br /&gt;
        display.sleep();&lt;br /&gt;
    }&lt;br /&gt;
    display.dispose();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  After all VerifyKeyListeners are notified, any VerifyListeners are then notified. ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;This happens before the change is effected, so you still have veto power.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;VerifyEvent Fields&amp;lt;/p&amp;gt;&lt;br /&gt;
FieldDescriptionint startThe zero-based offset of the start. Changing this value has no effect on event processing.int endThe zero-based offset of the end. Changing this value has no effect on event processing.String textThe text that will be inserted. Changing this value changes the text to be inserted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Against cut-and-paste: Modify the data in VerifyEvent to change the effect of user&amp;quot;s keystrokes ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import org.eclipse.swt.SWT;&lt;br /&gt;
import org.eclipse.swt.custom.StyledText;&lt;br /&gt;
import org.eclipse.swt.events.VerifyEvent;&lt;br /&gt;
import org.eclipse.swt.events.VerifyListener;&lt;br /&gt;
import org.eclipse.swt.widgets.Display;&lt;br /&gt;
import org.eclipse.swt.widgets.Shell;&lt;br /&gt;
public class StyledTextVerifyListenerStopPasting {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    final Display display = new Display();&lt;br /&gt;
    final Shell shell = new Shell(display);&lt;br /&gt;
    StyledText styledText = new StyledText(shell, SWT.V_SCROLL | SWT.BORDER);&lt;br /&gt;
    styledText.setText(&amp;quot;12345&amp;quot;);&lt;br /&gt;
    styledText.addVerifyListener(new VerifyListener() {&lt;br /&gt;
      public void verifyText(VerifyEvent event) {&lt;br /&gt;
        if (event.text.length() &amp;gt; 1) {&lt;br /&gt;
          event.text = &amp;quot;Stop pasting!&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    });&lt;br /&gt;
    styledText.setBounds(10, 10, 100, 100);&lt;br /&gt;
    shell.open();&lt;br /&gt;
    while (!shell.isDisposed()) {&lt;br /&gt;
      if (!display.readAndDispatch()) {&lt;br /&gt;
        display.sleep();&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    display.dispose();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Allow Arrow Key ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import org.eclipse.swt.SWT;&lt;br /&gt;
import org.eclipse.swt.custom.StyledText;&lt;br /&gt;
import org.eclipse.swt.custom.VerifyKeyListener;&lt;br /&gt;
import org.eclipse.swt.events.VerifyEvent;&lt;br /&gt;
import org.eclipse.swt.widgets.Display;&lt;br /&gt;
import org.eclipse.swt.widgets.Shell;&lt;br /&gt;
public class StyledTextArrowKeyVerifyKeyListener {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    final Display display = new Display();&lt;br /&gt;
    final Shell shell = new Shell(display);&lt;br /&gt;
    StyledText styledText = new StyledText(shell, SWT.V_SCROLL | SWT.BORDER);&lt;br /&gt;
    styledText.setText(&amp;quot;12345&amp;quot;);&lt;br /&gt;
    styledText.addVerifyKeyListener(new VerifyKeyListener() {&lt;br /&gt;
      public void verifyKey(VerifyEvent event) {&lt;br /&gt;
        System.out.println(event.character);&lt;br /&gt;
        event.doit = false;&lt;br /&gt;
        // Allow arrow keys&lt;br /&gt;
        if (event.keyCode == SWT.ARROW_UP || event.keyCode == SWT.ARROW_DOWN&lt;br /&gt;
          || event.keyCode == SWT.ARROW_LEFT || event.keyCode == SWT.ARROW_RIGHT)&lt;br /&gt;
          event.doit = true;&lt;br /&gt;
      }&lt;br /&gt;
    });&lt;br /&gt;
    styledText.setBounds(10, 10, 100, 100);&lt;br /&gt;
    shell.open();&lt;br /&gt;
    while (!shell.isDisposed()) {&lt;br /&gt;
      if (!display.readAndDispatch()) {&lt;br /&gt;
        display.sleep();&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    display.dispose();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Allow backspace and delete ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import org.eclipse.swt.SWT;&lt;br /&gt;
import org.eclipse.swt.custom.StyledText;&lt;br /&gt;
import org.eclipse.swt.custom.VerifyKeyListener;&lt;br /&gt;
import org.eclipse.swt.events.VerifyEvent;&lt;br /&gt;
import org.eclipse.swt.widgets.Display;&lt;br /&gt;
import org.eclipse.swt.widgets.Shell;&lt;br /&gt;
public class StyledTextVerifyListenerBackspaceDelete {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    final Display display = new Display();&lt;br /&gt;
    final Shell shell = new Shell(display);&lt;br /&gt;
    StyledText styledText = new StyledText(shell, SWT.V_SCROLL | SWT.BORDER);&lt;br /&gt;
    styledText.setText(&amp;quot;12345&amp;quot;);&lt;br /&gt;
    styledText.addVerifyKeyListener(new VerifyKeyListener() {&lt;br /&gt;
      public void verifyKey(VerifyEvent event) {&lt;br /&gt;
        System.out.println(event.character);&lt;br /&gt;
        event.doit = false;&lt;br /&gt;
        // Allow backspace and delete&lt;br /&gt;
        if (event.character == &amp;quot;\u0008&amp;quot; || event.character == &amp;quot;\u007F&amp;quot;) {&lt;br /&gt;
          event.doit = true;&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    });&lt;br /&gt;
    styledText.setBounds(10, 10, 100, 100);&lt;br /&gt;
    shell.open();&lt;br /&gt;
    while (!shell.isDisposed()) {&lt;br /&gt;
      if (!display.readAndDispatch()) {&lt;br /&gt;
        display.sleep();&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    display.dispose();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Allow return ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import org.eclipse.swt.SWT;&lt;br /&gt;
import org.eclipse.swt.custom.StyledText;&lt;br /&gt;
import org.eclipse.swt.custom.VerifyKeyListener;&lt;br /&gt;
import org.eclipse.swt.events.VerifyEvent;&lt;br /&gt;
import org.eclipse.swt.widgets.Display;&lt;br /&gt;
import org.eclipse.swt.widgets.Shell;&lt;br /&gt;
public class StyledTextVerifyListenerReturn {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    final Display display = new Display();&lt;br /&gt;
    final Shell shell = new Shell(display);&lt;br /&gt;
    StyledText styledText = new StyledText(shell, SWT.V_SCROLL | SWT.BORDER);&lt;br /&gt;
    styledText.setText(&amp;quot;12345&amp;quot;);&lt;br /&gt;
    styledText.addVerifyKeyListener(new VerifyKeyListener() {&lt;br /&gt;
      public void verifyKey(VerifyEvent event) {&lt;br /&gt;
        System.out.println(event.character);&lt;br /&gt;
        event.doit = false;&lt;br /&gt;
        // Allow return&lt;br /&gt;
        if (event.character == &amp;quot;\r&amp;quot;)&lt;br /&gt;
          event.doit = true;&lt;br /&gt;
      }&lt;br /&gt;
    });&lt;br /&gt;
    styledText.setBounds(10, 10, 100, 100);&lt;br /&gt;
    shell.open();&lt;br /&gt;
    while (!shell.isDisposed()) {&lt;br /&gt;
      if (!display.readAndDispatch()) {&lt;br /&gt;
        display.sleep();&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    display.dispose();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Dragging text in a StyledText widget ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
/*******************************************************************************&lt;br /&gt;
 * Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br /&gt;
 * All rights reserved. This program and the accompanying materials&lt;br /&gt;
 * are made available under the terms of the Eclipse Public License v1.0&lt;br /&gt;
 * which accompanies this distribution, and is available at&lt;br /&gt;
 * http://www.eclipse.org/legal/epl-v10.html&lt;br /&gt;
 *&lt;br /&gt;
 * Contributors:&lt;br /&gt;
 *     IBM Corporation - initial API and implementation&lt;br /&gt;
 *******************************************************************************/&lt;br /&gt;
//package org.eclipse.swt.snippets;&lt;br /&gt;
/*&lt;br /&gt;
 * Dragging text in a StyledText widget&lt;br /&gt;
 *&lt;br /&gt;
 * For a list of all SWT example snippets see&lt;br /&gt;
 * http://www.eclipse.org/swt/snippets/&lt;br /&gt;
 * &lt;br /&gt;
 * @since 3.2&lt;br /&gt;
 */&lt;br /&gt;
import org.eclipse.swt.SWT;&lt;br /&gt;
import org.eclipse.swt.custom.StyledText;&lt;br /&gt;
import org.eclipse.swt.dnd.DND;&lt;br /&gt;
import org.eclipse.swt.dnd.DragSource;&lt;br /&gt;
import org.eclipse.swt.dnd.DragSourceAdapter;&lt;br /&gt;
import org.eclipse.swt.dnd.DragSourceEvent;&lt;br /&gt;
import org.eclipse.swt.dnd.DropTarget;&lt;br /&gt;
import org.eclipse.swt.dnd.DropTargetAdapter;&lt;br /&gt;
import org.eclipse.swt.dnd.DropTargetEvent;&lt;br /&gt;
import org.eclipse.swt.dnd.TextTransfer;&lt;br /&gt;
import org.eclipse.swt.dnd.Transfer;&lt;br /&gt;
import org.eclipse.swt.graphics.Point;&lt;br /&gt;
import org.eclipse.swt.layout.FillLayout;&lt;br /&gt;
import org.eclipse.swt.widgets.Display;&lt;br /&gt;
import org.eclipse.swt.widgets.Shell;&lt;br /&gt;
public class DragTextInStyledText {&lt;br /&gt;
  static String string1 = &amp;quot;A drag source is the provider of data in a Drag and Drop data transfer as well as &amp;quot;&lt;br /&gt;
      + &amp;quot;the originator of the Drag and Drop operation. The data provided by the drag source &amp;quot;&lt;br /&gt;
      + &amp;quot;may be transferred to another location in the same widget, to a different widget &amp;quot;&lt;br /&gt;
      + &amp;quot;within the same application, or to a different application altogether. For example, &amp;quot;&lt;br /&gt;
      + &amp;quot;you can drag text from your application and drop it on an email application, or you &amp;quot;&lt;br /&gt;
      + &amp;quot;could drag an item in a tree and drop it below a different node in the same tree.&amp;quot;;&lt;br /&gt;
  static String string2 = &amp;quot;A drop target receives data in a Drag and Drop operation. The data received by &amp;quot;&lt;br /&gt;
      + &amp;quot;the drop target may have come from the same widget, from a different widget within &amp;quot;&lt;br /&gt;
      + &amp;quot;the same application, or from a different application altogether. For example, you &amp;quot;&lt;br /&gt;
      + &amp;quot;can drag text from an email application and drop it on your application, or you could &amp;quot;&lt;br /&gt;
      + &amp;quot;drag an item in a tree and drop it below a different node in the same tree.&amp;quot;;&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    final Display display = new Display();&lt;br /&gt;
    Shell shell = new Shell(display);&lt;br /&gt;
    shell.setLayout(new FillLayout());&lt;br /&gt;
    int style = SWT.MULTI | SWT.WRAP | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER;&lt;br /&gt;
    final StyledText text1 = new StyledText(shell, style);&lt;br /&gt;
    text1.setText(string1);&lt;br /&gt;
    DragSource source = new DragSource(text1, DND.DROP_COPY | DND.DROP_MOVE);&lt;br /&gt;
    source.setTransfer(new Transfer[] { TextTransfer.getInstance() });&lt;br /&gt;
    source.addDragListener(new DragSourceAdapter() {&lt;br /&gt;
      Point selection;&lt;br /&gt;
      public void dragStart(DragSourceEvent e) {&lt;br /&gt;
        selection = text1.getSelection();&lt;br /&gt;
        e.doit = selection.x != selection.y;&lt;br /&gt;
      }&lt;br /&gt;
      public void dragSetData(DragSourceEvent e) {&lt;br /&gt;
        e.data = text1.getText(selection.x, selection.y - 1);&lt;br /&gt;
      }&lt;br /&gt;
      public void dragFinished(DragSourceEvent e) {&lt;br /&gt;
        if (e.detail == DND.DROP_MOVE) {&lt;br /&gt;
          text1.replaceTextRange(selection.x, selection.y - selection.x, &amp;quot;&amp;quot;);&lt;br /&gt;
        }&lt;br /&gt;
        selection = null;&lt;br /&gt;
      }&lt;br /&gt;
    });&lt;br /&gt;
    final StyledText text2 = new StyledText(shell, style);&lt;br /&gt;
    text2.setText(string2);&lt;br /&gt;
    DropTarget target = new DropTarget(text2, DND.DROP_DEFAULT | DND.DROP_MOVE | DND.DROP_COPY&lt;br /&gt;
        | DND.DROP_LINK);&lt;br /&gt;
    target.setTransfer(new Transfer[] { TextTransfer.getInstance() });&lt;br /&gt;
    target.addDropListener(new DropTargetAdapter() {&lt;br /&gt;
      public void dragEnter(DropTargetEvent e) {&lt;br /&gt;
        if (e.detail == DND.DROP_DEFAULT)&lt;br /&gt;
          e.detail = DND.DROP_COPY;&lt;br /&gt;
      }&lt;br /&gt;
      public void dragOperationChanged(DropTargetEvent e) {&lt;br /&gt;
        if (e.detail == DND.DROP_DEFAULT)&lt;br /&gt;
          e.detail = DND.DROP_COPY;&lt;br /&gt;
      }&lt;br /&gt;
      public void drop(DropTargetEvent e) {&lt;br /&gt;
        text2.insert((String) e.data);&lt;br /&gt;
      }&lt;br /&gt;
    });&lt;br /&gt;
    shell.open();&lt;br /&gt;
    while (!shell.isDisposed()) {&lt;br /&gt;
      if (!display.readAndDispatch())&lt;br /&gt;
        display.sleep();&lt;br /&gt;
    }&lt;br /&gt;
    display.dispose();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Filtering Change with VerifyKeyListeners ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import org.eclipse.swt.SWT;&lt;br /&gt;
import org.eclipse.swt.custom.StyledText;&lt;br /&gt;
import org.eclipse.swt.custom.VerifyKeyListener;&lt;br /&gt;
import org.eclipse.swt.events.VerifyEvent;&lt;br /&gt;
import org.eclipse.swt.widgets.Display;&lt;br /&gt;
import org.eclipse.swt.widgets.Shell;&lt;br /&gt;
public class StyledTextVerifyKeyListener {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    final Display display = new Display();&lt;br /&gt;
    final Shell shell = new Shell(display);&lt;br /&gt;
    StyledText styledText = new StyledText(shell, SWT.V_SCROLL | SWT.BORDER);&lt;br /&gt;
    styledText.setText(&amp;quot;12345&amp;quot;);&lt;br /&gt;
    styledText.addVerifyKeyListener(new VerifyKeyListener() {&lt;br /&gt;
      public void verifyKey(VerifyEvent e) {&lt;br /&gt;
        System.out.println(e.character);&lt;br /&gt;
        e.doit = false;&lt;br /&gt;
      }&lt;br /&gt;
    });&lt;br /&gt;
    styledText.setBounds(10, 10, 100, 100);&lt;br /&gt;
    shell.open();&lt;br /&gt;
    while (!shell.isDisposed()) {&lt;br /&gt;
      if (!display.readAndDispatch()) {&lt;br /&gt;
        display.sleep();&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    display.dispose();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;VerifyEvent derives from KeyEvent.&amp;lt;/p&amp;gt;&lt;br /&gt;
FieldDescriptionchar characterThe character that the typed key represents. Changing this value has no effect on event processing.boolean doitwhether this event should be processed. Setting doit to false cancels event processing.int keyCodeThe code of the typed key. Changing this value has no effect on event processing.int stateMaskPossible values are combinations of SWT.ALT, SWT.ruMAND, SWT.CONTROL, SWT.CTRL, SWT.MOD1, SWT.MOD2, SWT.MOD3, SWT.MOD4, and SWT.SHIFT.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Handling Events ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;When users type, delete from, cut from, or paste to a StyledText, &lt;br /&gt;
four events fire:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;OL&amp;gt;&amp;lt;LI&amp;gt;key verification,&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;verification,&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;modification, and&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;extended modification.&amp;lt;/LI&amp;gt;&amp;lt;/OL&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Before the StyledText allows the changes to itself, &lt;br /&gt;
It first processes the key verification and the verification. &lt;br /&gt;
These handlers, VerifyKeyListeners and VerifyListeners, can allow, veto, or alter the requested text change. &lt;br /&gt;
After the change has happened, ModifyListeners and ExtendedModifyListeners react to the changes.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Print out VerifyEvent detail ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import org.eclipse.swt.SWT;&lt;br /&gt;
import org.eclipse.swt.custom.StyledText;&lt;br /&gt;
import org.eclipse.swt.events.VerifyEvent;&lt;br /&gt;
import org.eclipse.swt.events.VerifyListener;&lt;br /&gt;
import org.eclipse.swt.widgets.Display;&lt;br /&gt;
import org.eclipse.swt.widgets.Shell;&lt;br /&gt;
public class StyledTextVerifyListenerEventInforation {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    final Display display = new Display();&lt;br /&gt;
    final Shell shell = new Shell(display);&lt;br /&gt;
    StyledText styledText = new StyledText(shell, SWT.V_SCROLL | SWT.BORDER);&lt;br /&gt;
    styledText.setText(&amp;quot;12345&amp;quot;);&lt;br /&gt;
    styledText.addVerifyListener(new VerifyListener() {&lt;br /&gt;
      public void verifyText(VerifyEvent event) {&lt;br /&gt;
        System.out.println(event.start);&lt;br /&gt;
        System.out.println(event.end);&lt;br /&gt;
        System.out.println(event.text);&lt;br /&gt;
      }&lt;br /&gt;
    });&lt;br /&gt;
    styledText.setBounds(10, 10, 100, 100);&lt;br /&gt;
    shell.open();&lt;br /&gt;
    while (!shell.isDisposed()) {&lt;br /&gt;
      if (!display.readAndDispatch()) {&lt;br /&gt;
        display.sleep();&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    display.dispose();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Reacting to Change ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;All ModifyListeners are notified first then all ExtendedModifyListeners. &lt;br /&gt;
These notifications occur after the text has already changed.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import org.eclipse.swt.SWT;&lt;br /&gt;
import org.eclipse.swt.custom.StyledText;&lt;br /&gt;
import org.eclipse.swt.events.ModifyEvent;&lt;br /&gt;
import org.eclipse.swt.events.ModifyListener;&lt;br /&gt;
import org.eclipse.swt.widgets.Display;&lt;br /&gt;
import org.eclipse.swt.widgets.Shell;&lt;br /&gt;
public class StyledTextModifyListener {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    final Display display = new Display();&lt;br /&gt;
    final Shell shell = new Shell(display);&lt;br /&gt;
    final StyledText styledText = new StyledText(shell, SWT.V_SCROLL | SWT.BORDER);&lt;br /&gt;
    styledText.setText(&amp;quot;12345&amp;quot;);&lt;br /&gt;
    styledText.addModifyListener(new ModifyListener() {&lt;br /&gt;
      public void modifyText(ModifyEvent event) {&lt;br /&gt;
        System.out.println(&amp;quot;Character Count: &amp;quot; + styledText.getCharCount());&lt;br /&gt;
      }&lt;br /&gt;
    });&lt;br /&gt;
    styledText.setBounds(10, 10, 100, 100);&lt;br /&gt;
    shell.open();&lt;br /&gt;
    while (!shell.isDisposed()) {&lt;br /&gt;
      if (!display.readAndDispatch()) {&lt;br /&gt;
        display.sleep();&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    display.dispose();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Use a verify listener in StyledText ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import org.eclipse.swt.SWT;&lt;br /&gt;
import org.eclipse.swt.custom.StyledText;&lt;br /&gt;
import org.eclipse.swt.events.VerifyEvent;&lt;br /&gt;
import org.eclipse.swt.events.VerifyListener;&lt;br /&gt;
import org.eclipse.swt.layout.GridData;&lt;br /&gt;
import org.eclipse.swt.layout.GridLayout;&lt;br /&gt;
import org.eclipse.swt.widgets.Display;&lt;br /&gt;
import org.eclipse.swt.widgets.Shell;&lt;br /&gt;
public class StyledTextListenerVerify {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    final Display display = new Display();&lt;br /&gt;
    final Shell shell = new Shell(display);&lt;br /&gt;
    shell.setLayout(new GridLayout());&lt;br /&gt;
    StyledText styledText = new StyledText(shell, SWT.WRAP | SWT.BORDER);&lt;br /&gt;
    styledText.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));&lt;br /&gt;
    styledText.setText(&amp;quot;text&amp;quot;);&lt;br /&gt;
    // use a verify listener to keep the offsets up to date&lt;br /&gt;
    styledText.addVerifyListener(new VerifyListener() {&lt;br /&gt;
      public void verifyText(VerifyEvent e) {&lt;br /&gt;
        System.out.println(e.start);&lt;br /&gt;
        System.out.println(e.start);&lt;br /&gt;
        System.out.println(e.text.length());&lt;br /&gt;
      }&lt;br /&gt;
    });&lt;br /&gt;
    shell.setSize(400, 400);&lt;br /&gt;
    shell.open();&lt;br /&gt;
    while (!shell.isDisposed()) {&lt;br /&gt;
      if (!display.readAndDispatch())&lt;br /&gt;
        display.sleep();&lt;br /&gt;
    }&lt;br /&gt;
    display.dispose();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Use ExtendedModifyEvent ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Call addExtendedModifyListener() to add an ExtendedModifyListener.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;ExtendedModifyEvent Fields&amp;lt;/p&amp;gt;&lt;br /&gt;
FieldDescriptionint startThe zero-based offset, relative to the start of the StyledText, of the first position of the changed text.int lengthThe length of the changed text, in characters.String replacedTextThe text that was replaced by this change.&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import org.eclipse.swt.SWT;&lt;br /&gt;
import org.eclipse.swt.custom.ExtendedModifyEvent;&lt;br /&gt;
import org.eclipse.swt.custom.ExtendedModifyListener;&lt;br /&gt;
import org.eclipse.swt.custom.StyledText;&lt;br /&gt;
import org.eclipse.swt.widgets.Display;&lt;br /&gt;
import org.eclipse.swt.widgets.Shell;&lt;br /&gt;
public class StyledTextExtendedModifyListener {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    final Display display = new Display();&lt;br /&gt;
    final Shell shell = new Shell(display);&lt;br /&gt;
    final StyledText styledText = new StyledText(shell, SWT.V_SCROLL | SWT.BORDER);&lt;br /&gt;
    styledText.setText(&amp;quot;12345&amp;quot;);&lt;br /&gt;
    styledText.addExtendedModifyListener(new ExtendedModifyListener() {&lt;br /&gt;
      public void modifyText(ExtendedModifyEvent event) {&lt;br /&gt;
        System.out.println(event.start);&lt;br /&gt;
        System.out.println(event.length); &lt;br /&gt;
        System.out.println(event.replacedText);&lt;br /&gt;
      }&lt;br /&gt;
    });&lt;br /&gt;
    styledText.setBounds(10, 10, 100, 100);&lt;br /&gt;
    shell.open();&lt;br /&gt;
    while (!shell.isDisposed()) {&lt;br /&gt;
      if (!display.readAndDispatch()) {&lt;br /&gt;
        display.sleep();&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    display.dispose();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Veto the event by setting its doit member to false. ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import org.eclipse.swt.SWT;&lt;br /&gt;
import org.eclipse.swt.custom.StyledText;&lt;br /&gt;
import org.eclipse.swt.events.VerifyEvent;&lt;br /&gt;
import org.eclipse.swt.events.VerifyListener;&lt;br /&gt;
import org.eclipse.swt.widgets.Display;&lt;br /&gt;
import org.eclipse.swt.widgets.Shell;&lt;br /&gt;
public class StyledTextThrowEAway {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    final Display display = new Display();&lt;br /&gt;
    final Shell shell = new Shell(display);&lt;br /&gt;
    StyledText styledText = new StyledText(shell, SWT.V_SCROLL | SWT.BORDER);&lt;br /&gt;
    styledText.setText(&amp;quot;12345&amp;quot;);&lt;br /&gt;
    styledText.addVerifyListener(new VerifyListener() {&lt;br /&gt;
      public void verifyText(VerifyEvent event) {&lt;br /&gt;
        // If the text contains E or e, throw it all away&lt;br /&gt;
        if (event.text.indexOf(&amp;quot;e&amp;quot;) &amp;gt; -1 || event.text.indexOf(&amp;quot;E&amp;quot;) &amp;gt; -1) {&lt;br /&gt;
          event.text = &amp;quot;&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    });&lt;br /&gt;
    styledText.setBounds(10, 10, 100, 100);&lt;br /&gt;
    shell.open();&lt;br /&gt;
    while (!shell.isDisposed()) {&lt;br /&gt;
      if (!display.readAndDispatch()) {&lt;br /&gt;
        display.sleep();&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    display.dispose();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>