ПредишенСледващото

  • За eJFace библиотека структура, API, както и на тяхното прилагане
  • Различията между JFace и eJFace
  • За информация как да разработват приложения eJFace и eWorkbench eSWT в ERCP среда
  • Как да увеличите функциите на eJFace за кандидатстване

С две думи

Нека започнем с кратък отговор три важни въпроса, които възникват при разработването на пръв поглед най-eJFace.

  • eJFace е част JFace библиотеки за десктоп ориентирани мобилни устройства.
  • Платформено независима потребителски интерфейс API, допълване eSWT и взаимодействие с него.
  • Тя включва някои програмки на eSWT, предоставят полезна функционалност, като браузъри, базирани на MVC, намаляване на времето, необходимо за да разработи и поддържа време.
  • Той не включва компоненти JFace библиотека прекалено обемисти, за да бъдат полезни на мобилно устройство.

2. Защо да използваме eJFace?

  • Тази библиотека изпълнява развит потребителски интерфейс, полезен за вградени устройства.
  • ERCP създава приложения, които работят с eWorkbench.
  • Той прилага набор от класове, които се простират на eSWT, което дава възможност за интегриране на приложения в ERCP ERCP тезгяха и прилагане на по-сложни джаджи, като браузъри, фокусирани върху MVC.

3. Какви са eJFace на характеристики?

Членове пакет eJFace и детайли

Таблица 1. Пакетите се поддържат в eJFace

Както вече споменахме, eJFace изключва редица значителни пакети и библиотеки на JFace, фокусирани върху настолни компютри и мобилни устройства, без значение. Като се има предвид тяхната компактност изисквания и намаляване на сложността изпълнение, eJFace предлага пакети, показани по-горе. За повече информация за софтуерни интерфейси на всяка опаковка може да се намери в документацията eJFace Java (вж. RazdelResursy).

Следва кратко описание на опаковките, посочени в таблица 1.

Различията между eJFace и JFace

Както вече споменахме, eJFace е строго подмножество на JFace. Някои библиотеки, използването на които е малко вероятно да се вградени устройства, елиминирани или намалени значително. Таблица 2 съдържа обобщена информация за основните разлики eJFace и JFace.

Таблица 2. Разлики eJFace и JFace

Сравнете eJFace и JFace

Пакети, които са изключени от JFace

org.eclipse.jface.dialogs
org.eclipse.jface.operation (в eJFace реализира само IRunnableWithProgress интерфейс)
org.eclipse.jface.window
org.eclipse.jface.wizard

Пакети съкратен в сравнение с JFace

org.eclipse.jface.action
org.eclipse.jface.preference (в eJFace реализира само PreferencePage клас)
org.eclipse.jface.viewers (eJFace реализира само в TreeViewer и TableViewer)

Може да се чудите защо eJFace код не използвайте командата класа от eSWT разширенията за мобилни устройства. Ние предпочитаме да не се създава зависимост eJFace от разширенията за мобилни устройства, като незадължителен компонент в ERCP. В допълнение, разширенията за мобилни устройства са на разположение QueryDialog и TimedMessageBox. който замени няколко диалогови прозореца JFace версия, подходящи за мобилни устройства.

Промени в org.eclipse.jface.action изискват обяснение. JFace поддържа добавяне на елементи само в лентата на състоянието. От eWorkbench не изпълнява общата функция на лентата с менюта, като голяма част от eJFace на групов иск отстранени. Въпреки това, на няколко крачки се заменят с команда клас, приложена в eSWT на разширенията за мобилни устройства.

eJFace org.eclipse.jface.viewers демо приложения

В eJFace реализира само TreeViewer и TableViewer. За да научите как да се развива eWorkbench приложения, вижте ресурси.

TreeViewer

Да се ​​разработи демонстрация TreeViewer приложение трябва като модел на данните, за да се създаде клас възел. Тук ние се създаде един възел класове с имена и NBATeamNode NBAPlayer. Сега ние трябва да се определи връзката между възлите. Например, могат да добавят NBATeamNode друг пример NBATeamNode или NBAPlayer. За допълнение им е необходимо да се определят две отделни и ArrayLists NBATeamNode.

Списък 1. Определяне на съответната единица класа и йерархична връзката

След org.eclipse.ercp.eworkbench.applications разтягащото TreeViewer се създават например и го свързват с настоящия състав на метода на генерираните класа createPartControl SampleView. След това, ние си поставихме за нас желаното външния вид на дървен материал и добавяне на доставчик на съдържание и етикети на дърветата в тази TreeViewer. Доставчикът на съдържание осигурява йерархично отношение на цялото дърво, а доставчикът на етикети осигурява изображение и текст на всеки елемент. И накрая, Asking TreeViewer като входен възел. Не забравяйте, че тя трябва да бъде в основата на вашия модел данни сглобяване. Например, първо ние създаваме корен възел и към тях се прибавят три NBATeamNode като имената на различни отбори. Сега ние добавите към всеки екип начало пет НБА играчи, като се използва променлив NBAPlayer. Както можете да видите, като въведете корен NBATeamNode с име "корен" в TreeViewer.

Обява 2. клас SampleView

Три съдържание доставчик трябва да изпълни ITreeContentProvider. Ние определяме йерархичните връзки на дървото с помощта на методите и getParent getChildren. И, накрая, ние се под-елемент на всеки елемент с помощта getElements методи.

Обява 3. TreeViewerContentProvider

дърво доставчик етикет трябва да изпълни ILabelProvider. Както можете да видите, ние определяме изображението и текста, представен от всеки възел се използват методите GetImage и getText.

Обява 4. TreeViewerLabelProvider
Фигура прилагане 1. TreeViewer проба на eWorkbench на устройството

Разработване на вградени приложения с ejface

Разработване на вградени приложения с ejface

TableViewer

Да се ​​разработи приложение проба TableViewer трябва да се създаде модел на данните клас а. Ние създаваме Book.java. Както можете да видите в таблицата по колони трябва да се появи пет параметъра. Ето защо, за всеки параметър, трябва да използвате метода на кариерист-сетер.

Обява 5. Дефинирайте клас модел на данните
Обява 6. клас SampleView

TableViewerContentProvider IStructuredContentProvider трябва да изпълни интерфейса. TableViewerContentProvider определя съотношението мощност от масата. Както можете да видите в този клас, като се използва методът getElements можем да получим данни от всеки отделен масив, който ще представлява името или цената на книгата.

Обявата 7. TableViewerContentProvider

TableViewerLabelProvider ITableLabelProvider трябва да изпълни интерфейса. TableViewerLabelProvider уточнява текста и изображението на всяка колона на таблицата. Можем да получим текста на всеки елемент се използва метод getColumnText. (Тук не приложи метод getColumnImage.)

Списъка 8. TableViewerLabelProvider

След като инсталирате тази демонстрация приложение на устройството eWorkbench ще видите в списъка на тест TreeViewer икона прилагане на пробата. За да изпълните командата, щракнете върху Open през прозореца си. Ще видите таблица, създадена от нас.

Фигура приложение 2. TableViewer проба eWorkbench на устройството

Разработване на вградени приложения с ejface

Разработване на вградени приложения с ejface

eJFace org.eclipse.jface.preference демо приложение

PreferencePage

За да съхранявате, който сте задали на необходимите параметри, като например информация за сървъра, потребителско име и парола само изпълнява eJFace PreferencePage. В допълнение, той ще работи само ако посочите eWorkbench като цел. За повече информация относно заявленията за развитие eWorkbench и да ги вградите в работата чрез добавяне на настройките на приложението разширение точка могат да бъдат намерени в раздел ресурси. Фигура 3 показва как да се създаде по-лесен приложения на параметрите задача, включително поставяне на бутона OK. Отказ и Restore Default.

Обява 9. Поставете в plugin.xml

За настройките на страницата се появи в eWorkbench, своя клас, трябва да се разшири и прилага PreferencePage IWorkbenchPreferencePage. На първо място, ние заявяваме необходимите променливи, включително String. Текст. Label. Бътън и PreferenceStore. PreferenceStore. който се съхранява въведената от вас име-стойност двойки. За да се покаже, използвани потребителски настройки на метода на createContents.

За да възстановите стойностите по подразбиране, които използваме performDefaults. PerformOK използвате, за да запишете вашия вход чрез натискане на бутона OK. PerformCancel използвате, за да се върнете на страницата за настройки, без да записвате чрез натискане на бутона Отказ. първоначален (IWorkbench arg0) - необходим метод, за да се реализира заедно с изпълнението на параметрите на страница IWorkbenchPreferencePage.

Обява настройки код страница 10. Примерни

След като инсталирате това приложение на eWorkbench на устройството в списъка с приложения, ще видите икона за кандидатстване предпочитания Demo. Щракнете върху OK, за да запишете вашия вход, Отказ, за ​​да излезете от настройката на данни и възстановяване на страница, за да възстановите стойностите по подразбиране.

Фигура приложение 3. Проба на устройството Предпочитание Page eWorkbench на

Разработване на вградени приложения с ejface

Разработване на вградени приложения с ejface

eJFace org.eclipse.jface.resource демо приложение

В eJFace включени само най-важното org.eclipse.jface.resource библиотеката. В приложението проба ние показахме, как да се използват ImageRegistry и fontRegistry за ефективно управление на съоръжението на изображения и шрифтове. JFaceColors също се използва за контрол на цвета на съответните приспособления. В допълнение, ние показахме, как да се използва команда джаджа за изпълнение org.eclipse.jface.action функционалност.

Например кодът е показано в Пример 11, където за съответната приспособлението определен от регистър на шрифта, цвета, изображението. Ние също така показа, как да създадете команден джаджа eSWT. В допълнение, той е само в случаите, когато целта на приложението е eWorkbench. За да научите как да се развива eWorkbench приложения, вижте ресурси.

ImageRegistry използва за съхраняване и зареждане на различни изображения. Използвайки метода на пут () и да получите (). Можете да зададете име на всяка снимка и лесно да управлявате голям брой изображения. FontRegistry подобен на ImageRegistry и се използва за съхраняване и зареждане на различни fontData. Използване на методи поставят и да получите потребителят може да управлява ефективно шрифтове. JFaceResources могат да бъдат използвани за контрол и ImageRegistry FontRegistry програмата.

JFaceColors може динамично да определят цвета на текста и фона на приспособлението. StringConverter осъзнава възможността за манипулиране на Java струни. В този пример, ние го използва, за да намали низ обект StringArray.

команда джаджа е много полезен софтуер интерфейс eSWT. Command се появява само когато съответната джаджа има фокус. В нашия пример RecoverCommand свързани с композитен обект. RecoverCommand ще се появи, докато фокусът е върху съставната обекта. В противен случай RecoverCommand изчезва. Ние добавихме към SelectionListener RecoverCommand. Ако сте избрали RecoverCommand. Той призова widgetSelected.

Ето един пример на файла с ресурсите на устройството (сорс кода може да се намери в Центъра за изтегляния).

Обявата 11. Пример код ресурси
Фигура 4. Пример на ресурсите eJFace (преди промяна)

Разработване на вградени приложения с ejface

Фигура 5. Пример ресурс eJFace (след промяната)

Разработване на вградени приложения с ejface

Интеграция eJFace приложение проба в eWorkbench

Фигура 6. Комбиниран например eJFace на eWorkbench

Разработване на вградени приложения с ejface

Фигура 7. настройки Page NBA; Стойностите по подразбиране са базирани на НБА

Разработване на вградени приложения с ejface

Разработване на вградени приложения с ejface

Фигура 8. записи маса разчитат

Разработване на вградени приложения с ejface

Разработване на вградени приложения с ejface

заключение

Тази статия показва стъпките, необходими за разработване на приложение eJFace. Ние показахме, разлики между JFace и eJFace, и при условие, мотивация да се развива eJFace. По пътя разгледахме структурата на eJFace библиотека, нейните интерфейси и тяхното прилагане, са се научили как да се развиват eJFace приложения и eSWT eWorkbench сред ERCP, както и добавени възможности за функционалност eJFace в заявлението за демонстрация.

Изтегляне ресурси

Свързани теми

Свързани статии

Подкрепете проекта - споделете линка, благодаря!