Сегодня я начну серию о великолепной среде Swing под названием Spring Rich Client (SRC). Версия 1.0.0 была выпущена в марте 2008 года, и она не является неактивной, как я думал раньше.
Вы можете получить больше информации о SRC от:
Почему я назвал форум первым пунктом? Потому что для такого начинающего, как я, это был лучший источник информации (после образцов).
Итак, давайте создадим пример Привет, мир.
- Загрузите Spring Rich Client 1.0.0 отсюда (19 МБ, Apache License 2.0).
- Загрузите мой скелет Hello World (проект NetBeans 6.1 , 60 КБ) или используйте spring-richclient-archetype из пакета загрузки SRC, где вы должны установить maven, прежде чем сможете скомпилировать и запустить его.
Если вы используете мой скелет Hello World, откройте его в NetBeans, щелкните правой кнопкой мыши узел проекта и устраните проблемы со ссылками. Затем перейдите к месту, где вы разархивировали SRC, и добавьте первый файл jar. Другие файлы JAR должны быть добавлены автоматически для вас.
Проект с зависимостями будет около 2,7 МБ, это не небольшие накладные расходы, но я думаю, что все в порядке. В качестве примера для читателя можно сравнить его с минимальным размером NetBeans или Eclipse RCP.
Теперь пришло время запустить проект с помощью F6 или Run -> ‘Run Main Project’. Вы должны увидеть лягушку-заставку и окончательный вид:
Теперь позвольте мне объяснить несколько вещей, которые можно настроить в SRC. Пожалуйста, смотрите раздел Ресурсы для получения результатов настройки.
В качестве первого пункта я хотел знать, насколько легко представить возможности стыковки (vl docking). Это было действительно легко!
- добавить spring-richclient-docking.jar и vldocking.jar
- и измените две вещи в файле richclient-application-context.xml:
- изменить класс initialView на org.springframework.richclient.application.docking.vldocking.VLDockingViewDescriptor
- добавить applicationPageFactory в richclient-application-context.xml
Затем вы можете добавить новое окно, чтобы увидеть результаты перетаскивания:
- Создать класс View2
- добавьте следующее в richclient-application-context.xml:
<bean id=”view2″ class=”org.springframework.richclient.application.docking.vldocking.VLDockingViewDescriptor”> <property name=”viewClass” value=”de.peterk.springr.View2″ /> <property name=”autoHideEnabled” value=”true” /> <property name=”closeEnabled” value=”true”/> </bean>
и все готово! Просто запустите приложение, зайдите в Windows-> Show View-> View2
Теперь, насколько легко использовать ваш собственный макет? Настройка внешнего вида:
- Удалите lookAndFeelConfigurer и добавьте вместо:
<bean id=”lookAndFeelConfigurer” class=”de.peterk.springr.ui.KunststoffConfigurer”></bean>
- удалить look.jar: 350 кб
- добавить kunststoff : 17 кб
- добавить класс KunststoffConfigurer в пакет с исходным кодом
Хорошо, тогда изменение заставки тривиально: просто переписать файл splash-screen.png или изменить путь в файле richclient-startup-context.xml.
Теперь нам нужно настроить размер представления, это можно сделать с помощью 2 строк в методе SimpleLifecycleAdvisor.onPreWindowOpen:
Rectangle rect = GraphicsEnvironment.getLocalGraphicsEnvironment().getMaximumWindowBounds(); configurer.setInitialSize(new Dimension(rect.width, rect.height));
А чтобы перевести сообщения, просто скопируйте все файлы свойств, например, в file_de.properties, и переведите их! В нашем случае это означает «cp message.properties message_de.properties». Если вы хотите добавить переводимую подсказку с меткой initalView, просто используйте:
- lblMessage.setToolTipText (GetMessage (»initialView.toolTip»));
- в InitialView.createControl и добавьте свойство initialView.toolTip в файл свойств.
Чтобы установить сочетания клавиш, например, чтобы выйти из приложения. Вам нужно добавить одну строку в файл message.properties
- exitCommand.label=Exit@ctrl Q
Еще одно интересное действие (в SRC они будут называться командами) может быть перезапущено. Итак, как мы можем добавить действие в меню? Вы должны добавить
- restartCommand.label=Restart@ctrl R
- в файле message.properties и используйте
- Application.instance () начать (). Application.instance () getActiveWindow () близко ()..;
- в вашем классе RestartCommand. Затем добавьте
- <bean class = ”de.peterk.springr.RestartCommand” />
- в command-context.xml (например, после <value> propertiesCommand </ value> в fileMenu)
Окончательный результат:
Ресурсы
Здесь вы можете скачать расширенный пример «Здравствуй больше» (проект NetBeans 6.1 около 90 КБ, без депозита). Полный проект был 2,9 МБ.
Вывод
Можно сказать, что Spring Rich Client — это мощная коллекция jar :-). Но я бы сказал, что SRC — отличный способ для вашего следующего приложения свинга!
Он очень интуитивно понятен: весь пример (включая написание этого блога) занял у меня всего около 6 часов. Я думаю, что вы могли бы быть действительно продуктивным с этим! В случае если я опубликовал документы с ошибками: оставьте свой комментарий здесь!