| <!doctype html public "-//w3c//dtd html 4.0 transitional//en"> | |
| <html> | |
| <head> | |
| <TITLE>Getting Started with SWT</TITLE> | |
| <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> | |
| <link rel="stylesheet" href="../../default_style.css"> | |
| </head> | |
| <body> | |
| | |
| <table BORDER=0 CELLSPACING=0 CELLPADDING=2 WIDTH="100%" > | |
| <tr> | |
| <td ALIGN=left VALIGN=top COLSPAN="2" BGCOLOR="#0080c0"><b><font face="Arial,Helvetica"><font color="#ffffff"> Eclipse | |
| Corner Article</font></font></b></td> | |
| </tr> | |
| </table> | |
| <h1> <img SRC="../../images/Idea.jpg" height=86 width=120 align=center></h1> | |
| <center> | |
| <h1> Getting Started with SWT</h1> | |
| </center> | |
| <center> | |
| <h3> Exploring the features of the Eclipse Standard Widget Toolkit</h3> | |
| </center> | |
| <blockquote><b>Summary</b> <br> | |
| This article contains several examples that show how to use the features of | |
| the Eclipse Widget toolkit, SWT. Each example builds upon the ones before. The | |
| first example shows how to create an empty window. The second example adds some | |
| buttons to the window. The third example registers a listener for events on | |
| one of the buttons.</blockquote> | |
| <p> | |
| <hr WIDTH="100%"> | |
| <br> | |
| <p>The examples below show how to use SWT to create stand-alone applications, | |
| and provide a good basis for experimenting with SWT. The Eclipse Workbench defines | |
| the UI paradigm and how editors and views are integrated. It provides the display | |
| and shell that are created below so you don't need to create them for you Workbench | |
| plug-in user interfaces.</p> | |
| <p>For further details on SWT, take a look at the <a href="swt-widget-hierarchy.html">widget | |
| hierarchy</a> and <a href="swt-style-bits.html">supported style bits</a>. Then | |
| try modifying the example below with different widgets, styles, and actions.</p> | |
| <h2> <a NAME="BM2_1_Example_1__Creating_your_first_win"></a>Creating your first | |
| window</h2> | |
| <pre>// Create a shell. | |
| Display display = new Display(); // The "parent" of a shell is the display it is created on. | |
| Shell shell = | |
| new Shell (display); // Create the top level window. | |
| shell.open (); // Open it | |
| // This is the event loop. | |
| while (!shell.isDisposed ()) | |
| if (!display.readAndDispatch ()) display.sleep ();</pre> | |
| <h2> <a NAME="BM2_2_Example_2__Adding_a_widget"></a><b>Adding a widget</b></h2> | |
| This example builds upon the first example and adds two buttons: A push button | |
| and a check box. Notice how the constructors in SWT require you to pass the parent | |
| widget and style bits. Style bits are used to specify values required to create | |
| the underlying OS resource. In this case it specifies the type of button to create. | |
| The code added by this example is marked in <i>italic.</i> | |
| <pre>Display display = new Display(); | |
| Shell shell = new Shell (display); | |
| <i>Button b1 = new Button (shell, SWT.PUSH); | |
| b1.setText ("Button 1"); | |
| b1.setBounds (0, 0, 100, 60); | |
| Button b2 = | |
| new Button (shell, SWT.CHECK); | |
| b2.setText ("Button 2"); | |
| b2.setBounds (0, 60, 100, 45); | |
| </i>shell.open (); | |
| while (!shell.isDisposed ()) | |
| if (!display.readAndDispatch ()) display.sleep ();</pre> | |
| <h2> <a NAME="BM2_3_Example_3__Adding_Event_Handlers"></a>Adding event handlers</h2> | |
| Event handling is done by registering listeners in the same way as in AWT. The | |
| code added by this example is marked in <i>italic.</i> | |
| <pre>Shell shell = new Shell (); | |
| Button b1 = new Button (shell, SWT.PUSH); | |
| b1.setText ("Button 1"); | |
| b1.setBounds (0, 0, 100, 60); | |
| <i>b1.addMouseListener(new MouseListener() { | |
| public void mouseDown(MouseEvent e) { | |
| System.out.println("mouseDown:"); | |
| }; | |
| public void mouseDoubleClick(MouseEvent e) { | |
| System.out.println("mouseDoubleClick:"); | |
| }; | |
| public void mouseUp(MouseEvent e) { | |
| System.out.println("mouseUp:"); | |
| }; | |
| }); | |
| </i>Button b2 = new Button (shell, SWT.CHECK); | |
| b2.setText ("Button 2"); | |
| b2.setBounds (0, 60, 100, 45); | |
| shell.open (); | |
| <a NAME="BM2_4_LayoutManagers_in_SWT"></a> | |
| Display display = | |
| shell.getDisplay (); | |
| while (!shell.isDisposed ()) | |
| if (!display.readAndDispatch ()) display.sleep ();</pre> | |
| <br> | |
| | |
| </body> | |
| </html> |