Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Jpanel в JScrollPane, вставляю Jpanel в JscrollPane 
V
    Опции темы
Su_
  Дата 15.6.2010, 20:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 386
Регистрация: 1.8.2007

Репутация: нет
Всего: нет



Всем доброго вечера..

Не могу понять в чем проблема..

У меня есть JPanel , на ней по нажатию кнопки добавляется кнопка по принципу
Код

jPanel_home.setLayout(new GridLayout(0, 1));


Смотрю как получается, кнопки появляются как надо , одна над другой.

Теперь я захотел , что если количество кнопок превышает размеры окна появился скролинг. 
Создал JScrollPane  перетащил туда свой JPanel . 
Теперь кнопки стали растягиваться по всей высоте JSrollPane !?Как этого избежать.. Т.е Jpanel удлиняется до поры до времени, потом врубается скролл.

Я пытался решить вопрос через setPerfectSize , но не получилось..
Т.е при добавление новой кнопками увеличивать JPanel_home
user posted image
Слева без JScrollPane , справа с JScrollPane


--------------------
user posted image

PM MAIL WWW   Вверх
pathfinder
Дата 15.6.2010, 20:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 120
Регистрация: 3.3.2010

Репутация: 7
Всего: 10



Это нормальное поведение GridLayout.

Для того что-бы кнопки не "расплывались" нужно поместить jPanel_home в панель с менеджером расположения FlowLayout.
Код

...
JPanel flowPanel = new JPanel(new FlowLayout(FlowLayout.CENTER));
flowPanel.add(jPanel_home);
jScrollPane.setViewportView(flowPanel);

PM MAIL   Вверх
Su_
Дата 15.6.2010, 21:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 386
Регистрация: 1.8.2007

Репутация: нет
Всего: нет



Панель в Панель, не додумался) Спасибо!


--------------------
user posted image

PM MAIL WWW   Вверх
Su_
Дата 15.6.2010, 22:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 386
Регистрация: 1.8.2007

Репутация: нет
Всего: нет



Можно еще вопрос в этой теме.

Как прижать Jpanel к левому , верхнему углу при появление Скроллинга. Или как скролинг вправо прикрепить ,что бы он накладывался на панельку?


Момент добавление я отловил
Код

  private void jPanel_homeComponentResized(java.awt.event.ComponentEvent evt) {
   jTextArea_info.append(""+jScrollPane3.getVerticalScrollBar().isShowing()+" emo \n");

    }


а то так:

user posted image

Это сообщение отредактировал(а) Su_ - 15.6.2010, 22:21


--------------------
user posted image

PM MAIL WWW   Вверх
pathfinder
Дата 15.6.2010, 22:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 120
Регистрация: 3.3.2010

Репутация: 7
Всего: 10



Насколько я понял речь идет об отступах слева и сверху, тогда вот так:

Код

... = new FlowLayout(FlowLayout.CENTER, 0, 0); // отступы между компонентами


что-бы scrollBar при появлении не перекрывал полезное пространство, достаточно добавить к preferredSize самой широкой кнопки размер scrollBar-а(имеется ввиду до добавления оной на панель).

Это сообщение отредактировал(а) pathfinder - 15.6.2010, 23:03
PM MAIL   Вверх
Su_
Дата 16.6.2010, 01:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 386
Регистрация: 1.8.2007

Репутация: нет
Всего: нет



Спасибо, теперь то что надо!)


--------------------
user posted image

PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   jk1
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема »


 




[ Время генерации скрипта: 0.0950 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.