Скользящие карты для графических интерфейсов Java Swing: SwingX-WS

Цель этого поста — собрать в одном месте всю полезную информацию и материалы, необходимые для реализации скользких карт в приложении Swing с использованием библиотеки SwingX-WS, теперь, когда Веб-сайт SwingLabs больше не существует, несмотря на то, что разработка SwingX все еще активна.


person Unai Vivi    schedule 01.12.2013    source источник
comment
+1 как за вопрос, так и за ответ (посмотрел скользко - мой учебный предмет дня :-)   -  person kleopatra    schedule 01.12.2013
comment
Я не уверен, что такой вопрос больше актуален, но, поскольку вы отвечаете сами за себя, я сам воздержусь от рефлекторного голосования. (Кроме того: JavaFX, вероятно, является подходящим способом для продвинутых виджетов. Он объединяет некоторые концепции, которые SwingLabs сделали неуклюжим способом, например привязку.)   -  person millimoose    schedule 01.12.2013
comment
Не совсем, поскольку подавляющее большинство графических интерфейсов Java по-прежнему основаны на колебаниях, несмотря на то, что JavaFX является очень хорошей структурой, которую я сам использую для некоторых проектов. Добавьте крутую кривую обучения JavaFX и инерцию ноу-хау тысяч компаний/разработчиков, полагающихся на Swing как для своих новых, так и для не очень новых приложений, тот факт, что могут быть веские причины (что я не хотел знать о том), чтобы они придерживались Swing, и тот факт, что в настоящее время все больше и больше приложений имеют растущую потребность в скользких картах, и внезапно эта тема снова становится горячей. И если я смогу [продолжает]   -  person Unai Vivi    schedule 02.12.2013
comment
[продолжение] помочь некоторым пользователям, не заставляя их копаться в том, что я уже разобрал, что ж, я доволен этим. Да, можно создать какое-нибудь причудливое решение на основе JavaFX и встроить его в свой свинг-проект с помощью JFXPanel или чего-то подобного, но это потребует изменения сценариев сборки и [множества] дополнительного [шаблонного] кода, чтобы склеить воедино две разные парадигмы. С SwingX-ws (использую его с отличными результатами уже довольно давно), с другой стороны, это чрезвычайно эффективный процесс, а время - самый ценный актив, ИМХО.   -  person Unai Vivi    schedule 02.12.2013


Ответы (3)


Итак, обо всем по порядку, актуальные на сегодняшний день банки, созданные из последних источников.

SwingX-WS:

SwingX v. 1.6.5-1 (требуется зависимость во время выполнения, требуется Java6 или новее):

Несколько слов о SwingX: это удивительный проект, предназначенный для расширения функциональность Swing с дополнительными виджетами (очень хорошо сделанная демонстрация, которую можно запустить через Интернет здесь, с примерами кода и всем остальным), красиво выглядящий, мощный, быстрый и без навороченных зависимостей. Один большой плюс, ИМХО, заключается в том, что он действительно прекрасно интегрируется с современным Nimbus L&F (в отличие от jide-oss, например, который хоть и очень хорош сам по себе, но плохо интегрируется с Nimbus — у него есть, однако, очень хорошая альтернатива L&F, называемая Xerto, но это уже другая история...).

Что касается документации, источники, которые лучше всего демонстрируют использование swingx-ws, представляют собой серию статей, написанных Джош Мариначчи, перечисленные здесь в хронологическом порядке:

В [надеюсь, маловероятном] случае необходимости сообщить об ошибке можно найти страницу отслеживания проблем проекта в JIRA.

person Unai Vivi    schedule 01.12.2013

Потомок swingx-ws под названием JXMapViewer2 можно найти на github. По состоянию на апрель 2019 года он кажется достаточно активным.

person Pixelstix    schedule 25.04.2019

swingx-ws-1.0.jar совместим с swingx-1.6.jar, но не с swingx-all-1.6.4.jar.
Если вы используете swingx-all-1.6.4.jar и хотите использовать плитки как и в случае с swingx-1.6.jar, есть обходной путь.

Copy

org.jdesktop.swingx.util.GraphicsUtilities.java
from swingx-1.6.4 to a new package of your own (the swingx-1.6 version) :

org.jdesktop.swingx.graphics.GraphicsUtilities.java
person lapsus63    schedule 29.09.2016