Standard Widget Toolkit

Standard Widget Toolkit
Скриншот программы Standard Widget Toolkit
Eclipse IDE, приложение, основанное на SWT
Тип Инструментарий виджетов для платформы Java
Разработчик Eclipse Foundation
Написана на Java[1]
Операционная система Cross-platform
Языки интерфейса Multilingual
Аппаратная платформа Java Virtual Machine
Последняя версия 4.29 (3 сентября 2023 года)
Репозиторий github.com/eclipse-platf…
Состояние Active
Лицензия Eclipse Public License
Сайт eclipse.org/swt/
Логотип Викисклада Медиафайлы на Викискладе

Standard Widget Toolkit, или SWT (произносится «свит») — библиотека с открытым исходным кодом для разработки графических интерфейсов пользователя на языке Java.

Разработана фондом Eclipse, лицензируется под Eclipse Public License, одной из лицензий открытого ПО.

SWT не является самостоятельной графической библиотекой, а представляет собой кросс-платформенную оболочку для графических библиотек конкретных платформ, например, под Linux SWT использует библиотеку GTK+. SWT написана на стандартной Java и получает доступ к OS-специфичным библиотекам через Java Native Interface, который рассматривается в качестве сильного средства, несмотря на то, что это не является чистой Java.

SWT — альтернатива AWT и Swing (Sun Microsystems) для разработчиков, желающих получить привычный внешний вид программы в данной операционной системе. Использование SWT делает Java-приложение более эффективным, но снижает независимость от операционной системы и оборудования, требует ручного освобождения ресурсов и в некоторой степени нарушает Sun-концепцию платформы Java.

Пример

Результат в среде GTK
import org.eclipse.swt.*;
import org.eclipse.swt.widgets.*;

public class HelloWorld {
   public static void main (String[] args) {
      Display display = new Display();
      Shell shell = new Shell(display);
      Label label = new Label(shell, SWT.NONE);
      shell.setSize(300,200);
      label.setText("Hello World");
      label.pack();
      shell.open();
      while (!shell.isDisposed()) {
          if (!display.readAndDispatch ()) display.sleep (); 
      } 
      display.dispose ();
   }
}

См. также

  • eSWT (Разработка встроенных приложений с использованием eSWT)
  • Eclipse
  • JFace
  • JNI

Примечания

  1. The swt Open Source Project on Open Hub: Languages Page — 2006.

Ссылки

  • Проект Standard Widget Toolkit
  • SWT на EclipseWiki
  • Начало использования Eclipse и SWT
  • SWT Programming with Eclipse Архивная копия от 26 сентября 2008 на Wayback Machine
  • Презентация «Введение в SWT» Бена Гэлбрейта (англ. Ben Galbraith)
  • Eclipse Nebula
Перейти к шаблону «Eclipse Foundation»
Лицензия: Eclipse Public License
Перейти к шаблону «Инструментарии виджетов»
Инструментарии (наборы) элементов графического интерфейса
Низко-
уровневые
Высоко-
уровневые
Amiga OS
Mac OS и
macOS
  • Cocoa
  • MacApp
  • MacZoop
  • PowerPlant
Windows
UNIX, под X
Кросс-
платфор-
менные
На основе Flash
На основе XML,
AJAX или SVG
На основе Java
На основе
C или C++
На основе Common Lisp
На основе Pascal
На основе Python
На основе Objective C