Следующий урок покажет вам, как построить динамический JFace TableViewer изгнан из файла XML. Прелесть этого решения в том, что ваша модель данных отделена от логики представления, поэтому при изменении данных XML вам не нужно менять конкретный код.
Это довольно простой урок, который займет около 5-10 минут.
Шаг 1. Создайте новый проект в eclipse 3.4
Откройте Eclipse -> Нажмите Файл -> Новый проект плагина -> Далее.
Чтобы сохранить примеры, просто введите galang.research в название проекта и нажмите «Далее». Вы можете ввести любое имя, какое захотите, но вам нужно будет учесть это во всех примерах кода, которые я предоставлю.
Выберите Да в разделе Rich Client Application, нажмите Next.
Выберите приложение RCP с видом, нажмите «Далее».
Выберите Добавить брендинг.
Нажмите Готово, затем Да.
Разархивируйте файл, расположенный по указанному ниже URL-адресу, и сохраните test.xml в Заархивируйте файл /temp/test.xml на свой локальный компьютер.
https://sourceforge.net/project/showfiles.php?group_id=228168&package_id=299144&release_id=640558
Щелкните правой кнопкой мыши проект и настройте путь сборки, укажите источник ссылки, затем нажмите кнопку обзора и выберите расположение src, куда вы распаковали файл выше.
Введите имя папки srcExt
Ваш пакетный обозреватель должен выглядеть следующим образом.
Modfy View.java в пакете galang.research со следующим кодом.
/** * This is a callback that will allow us to create the viewer and initialize * it. */ public void createPartControl(Composite parent) { viewer = new TableViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL); viewer.setContentProvider(new RowContentProvider()); RowLabelProvider labelProvider = new RowLabelProvider(); labelProvider.createColumns(viewer); viewer.setLabelProvider(labelProvider); viewer.setInput(getViewSite()); }
И добавьте следующий импорт в View.java
import galang.research.jface.RowContentProvider; import galang.research.jface.RowLabelProvider;
Дважды щелкните plugin-xml и выберите приложение Lanch Eclipse.
Поздравляем, вы только что закончили этот урок. Поэкспериментируйте с /test/temp.xml и посмотрите, как он динамически влияет на приложение RCP после его перезапуска.