Я работаю над созданием редактора как части JAVA-приложения для лагера, который позволил бы пользователю перетаскивать на панель различные пользовательские компоненты Swing (точно так же, как редактор GUI). Я также хочу, чтобы пользователь мог вращать эти объекты с помощью мыши. Я смотрел на JXLayer и TransformUI, но я не хочу добавлять целую кучу библиотек. Есть идеи?
Вы также можете создать свое приложение на платформе NetBeans (RCP на основе Swing) и использовать его визуальную библиотеку:
http://platform.netbeans.org/graph/
Я создал каркас настройки для таких задач: перемещайте и изменяйте размеры компонентов с помощью мыши и разрешайте дальнейшую настройку."Snap-to-grid" -функция включена!Может быть, вы найдете это полезным.(Это открытый исходный код!)
Я начал писать учебник (все еще в разработке!):
http://softsmithy.sourceforge.net/lib/docs/tutorial/swing/customizer/index.html
Сведения о добавлении компонентов см.
http://softsmithy.sourceforge.net/lib/docs/api/org/softsmithy/lib/swing/CustomizerBar.html
Для настройки свойств используйте:
http://softsmithy.sourceforge.net/lib/docs/api/org/softsmithy/lib/swing/JCustomizerPropertyTable.html
Зарегистрируйте его в SelectionManager JCustomizerPane и установите свойство CustomizableProperties объектов JCustomizer.
Также взгляните на подклассы JCustomizer.
Например, есть
настройщиков для изображений и форм:
http://softsmithy.sourceforge.net/lib/docs/api/org/softsmithy/lib/swing/JXIconCustomizer.html
настройщик меток со встроенным редактированием:
http://softsmithy.sourceforge.net/lib/docs/api/org/softsmithy/lib/swing/JLabelCustomizer.html
настройщик строк:
http://softsmithy.sourceforge.net/lib/docs/api/org/softsmithy/lib/swing/JLine2DCustomizer.html
И есть много классов, обеспечивающих поддержкудействия меню и панели инструментов.(Внедрение поддержки некоторых действий «Java Look and Feel Graphics Repository».)
Посмотрите на пакеты * .swing и * .swing.action.
Просто спросите меня, можете ли выне найти их.
Домашняя страница:
http://www.softsmithy.org
Загрузить:
http://sourceforge.net/projects/softsmithy/files/softsmithy/
Maven:
<dependency> <groupid>org.softsmithy.lib</groupid> <artifactid>lib-core</artifactid> <version>0.1</version> </dependency>
API:
http://softsmithy.sourceforge.net/lib/docs/api/index.html
Если у вас есть вопросы, просто спросите меня!