Отображение миниатюр в виде сетки - PullRequest
4 голосов
/ 06 мая 2011

У меня есть приложение, в котором я должен отображать изображения в виде эскизов в сетке, и когда пользователи нажимают на одно из них, исходное изображение должно отображаться в JAVA.У меня нет
представления о том, как отображать миниатюры, присутствующие в папке, в виде сетки.Любая помощь относительно того, как начать и некоторые примеры кодов и ссылок, будет приветствоваться.

Ответы [ 6 ]

6 голосов
/ 06 мая 2011

Работайте над одной вещью одновременно.

  1. Прочтите о LayoutManager и создайте программу, которая будет размещать компоненты в сетке.
  2. Выясните, как читать изображения и создавать миниатюры.Добавьте это в вашу программу.
  3. Беспорядок с JDialog и создание всплывающих окон.Также посмотрите на классы Action и ActionListeners, чтобы связать создание всплывающего окна с нажатием кнопки.
2 голосов
/ 06 мая 2011

Вы работаете в Swing?С какой частью у вас проблемы?Если это макет, вы можете начать с GridLayout

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

И для отображения растровых изображений подойдет Метка .

1 голос
/ 04 марта 2012

У меня недавно было то же самое требование - и я изучал использование Flowlayout. К сожалению - как описывает эта страница - http://tips4java.wordpress.com/2008/11/06/wrap-layout/ - она ​​не ведет себя так, как нам хотелось бы.

К счастью, вы можете получить источник для 'WrapLayout' с той же страницы.

Когда дело доходит до загрузки изображений на панель, для производительности я рекомендую использовать SwingWorker, как описано здесь - http://docs.oracle.com/javase/tutorial/uiswing/components/icon.html#efficiency

1 голос
/ 18 мая 2011

Вы можете использовать Виджет галереи туманности , если используете SWT

1 голос
/ 06 мая 2011

Если вам нужен JComponent, вы можете попробовать JTable .Если вы хотите макет, посмотрите на GridLayout .

0 голосов
/ 19 мая 2011

Взгляните на JFlow это не совсем то, что вы просили, но довольно близко, и все сделано для вас!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...