JFace определяется проектом Eclipse как « набор инструментов пользовательского интерфейса , предоставляющий вспомогательные классы для разработки функций пользовательского интерфейса, реализация которых может быть утомительной». [1]
Standard Widget Toolkit (SWT) — это набор инструментов виджетов с открытым исходным кодом для Java, разработанный для предоставления эффективного, переносимого доступа к возможностям пользовательского интерфейса операционных систем, на которых он реализован.
Предоставляет классы Viewer, которые выполняют утомительные задачи по заполнению, сортировке, фильтрации и обновлению виджетов.
Предоставляет действия, позволяющие пользователям определять собственное поведение и назначать это поведение определенным компонентам, например, элементам меню, элементам инструментов, кнопкам и т. д.
Предоставляет реестры, содержащие изображения и шрифты.
Определяет стандартные диалоги и мастера , а также структуру для построения сложных взаимодействий с пользователем.
Его главная цель — освободить разработчика, позволив ему сосредоточиться на реализации своего конкретного приложения, не беспокоясь о базовой системе виджетов или решении проблем, которые свойственны почти всем приложениям пользовательского интерфейса.
Основной заботой группы Eclipse при разработке JFace было то, что ни при каких обстоятельствах они не хотели скрывать реализацию компонента SWT от программиста. JFace полностью зависит от SWT , но SWT не зависит от JFace. Более того, Eclipse Workbench построен как на JFace, так и на SWT; в некоторых случаях он обходит JFace и обращается к SWT напрямую.
Пример
Ниже приведена базовая программа Hello World с использованием JFace.
импорт org.eclipse.jface.window.ApplicationWindow ; импорт org.eclipse.swt.SWT ; импорт org.eclipse.swt.widgets.* ;public class HelloWorld extends ApplicationWindow { public static void main ( String [] args ) { new HelloWorld (). run (); } public HelloWorld () { super ( null ); } public void run () { setBlockOnOpen ( true ); open (); Display.getCurrent ( ). dispose (); } protected Control createContents ( Composite parent ) { Label label = new Label ( parent , SWT.CENTER ) ; label.setText ( " Hello , World " ); return label ; } }
^ Запись в руководстве программиста Eclipse на JFace
Библиография
Скарпино, Мэтью; Холдер, Стивен; Нг, Стэнфорд; Михалкович, Лоран (28 ноября 2004 г.), SWT/JFace в действии: проектирование графического интерфейса пользователя с Eclipse 3.0 (1-е изд.), Manning Publications , стр. 496, ISBN1-932394-27-3
Ли Гоцзе, Jackwind (11 февраля 2005 г.), Профессиональные собственные интерфейсы Java с SWT/JFace (1-е изд.), Wrox Press , стр. 528, ISBN0-470-09459-1, заархивировано из оригинала 26 декабря 2014 г. , извлечено 21 июля 2009 г.
Харрис, Роберт; Уорнер, Роб (21 июня 2004 г.), Полное руководство по SWT и JFACE (1-е изд.), Apress , стр. 684, ISBN1-59059-325-1, заархивировано из оригинала 31 июля 2009 г. , извлечено 21 июля 2009 г.
Внешние ссылки
Вики JFace
Сэм-бодден, Брайан; Джадд, Кристофер (26 апреля 2004 г.). «Богатые клиенты с SWT и JFace». JavaWorld . Получено 21 июля 2020 г. .
Использование графического интерфейса пользователя Eclipse вне Eclipse Workbench, часть 1: использование JFace и SWT в автономном режиме, Адриан Эмменис
Использование графического интерфейса пользователя Eclipse вне Eclipse Workbench, часть 2: использование реестра изображений JFace, Адриан Эмменис