SWT で表示する

SWT(Standard Widget Toolkit) で Window を表示します。

前田稔の超初心者のプログラム入門

プログラムの作成

  1. SWT(Standard Widget Toolkit) で Window を表示する方法です。
    SWT で開発するには Eclipse のインストールと、SWT-SDK を別途インストールする必要があります。
    SWT は Swing で問題となっていたグラフィックの描画速度を上げる「非標準の GUI ライブラリ」です。
    Eclipse(エクリプス) は IBM によって開発された統合開発環境(IDE)ですが、 SWT はこれと組み合わせて使われることが一般的です。
    //★ SWT で Window を表示する    前田 稔
    import org.eclipse.swt.widgets.*;
    
    public class SwtTest
    {   public static void main(String[] args)
        {   Display display = new Display();
            Shell shell = new Shell(display);
            shell.open ();
    
            while (!shell.isDisposed ())
            {   if (!display.readAndDispatch ()) display.sleep ();
            }
    
            display.dispose ();
        }
    }
    

プログラムの説明

  1. SWT でプログラムするには SWT-SDK(ソフトウエア開発キット)を別途インストールする必要があります。
    org.eclipse.swt.widgets.* をインポートします。
        import org.eclipse.swt.widgets.*;
        public class SwtTest
        {
        
  2. main() では new Display() で Display Class をインスタンス化します。
    new Shell(display) で Shell をインスタンス化します。
    shell.open() で Shell をオープンします。
        public static void main(String[] args)
        {   Display display = new Display();
            Shell shell = new Shell(display);
            shell.open ();
        
  3. while() でメッセージループに入ります。
    ループの中から display.sleep() メソッドを呼び出します。
            while (!shell.isDisposed ())
            {   if (!display.readAndDispatch ()) display.sleep ();
            }
        
  4. メッセージループから抜けると display.dispose() で終了します。
            display.dispose ();
        }
        
  5. SWT のプログラムは、従来の C++(Windows) の組み方によく似ています。
    その分ネイティブコードに近く、描画速度のアップに期待が持てます。
    もっとも最近では、マシンの速度が向上し、Swing も改良されて優位性も薄れてきたようです。

超初心者のプログラム入門(Java2)