Статьи

Spring Rich Client — часть 1

Сегодня я начну серию о великолепной среде 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 часов. Я думаю, что вы могли бы быть действительно продуктивным с этим! В случае если я опубликовал документы с ошибками: оставьте свой комментарий здесь!

С http://karussell.wordpress.com/