![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| PashaOvechkin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 394 Регистрация: 1.4.2007 Где: Riga, Latvia Репутация: 1 Всего: 4 |
Привет!
есть свинг фрейм (его можно посмотреть в атачменте) Фрейм уже готов, нужно его немного переделать... Layouts знаю плохо, поетому необходим совет Вот сдесь можно посмотреть код Фреима
На самом деле всё очень просто... Основной шаблон во фреиме ето -> GridBagLayout В контеинере фреима есть несколько панелек с рамкой, в каждой из них исполь зуется шабло BoxLayout. Проблема заключается в том, что ети самые панели могу содержать в себе много леиблов в столбик... А если леиблов много, метод pack(); основного темплейта фреима(GridBagLayout) сжимает всё так, что кнопки становятся узкими, не видно содержимого панелей.... Выглядит ужасно! Подскажите пожалуйста какой шаблон выбрать или какой нить другой workaround... Спасибо! Это сообщение отредактировал(а) PashaOvechkin - 4.2.2008, 16:07 Присоединённый файл ( Кол-во скачиваний: 24 )
aa.JPG 31,76 Kb |
|||
|
||||
| romanarey |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 27.7.2007 Репутация: нет Всего: нет |
Пользуй вот это!!!
Правда это работает только в 1,5 1,6, Но зато довольно просто после этого изменять все размеры и отступы!!!! http://java.sun.com/docs/books/tutorial/ui...oupExample.html |
|||
|
||||
| fixxer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 14.9.2006 Где: Саратов, Россия Репутация: 15 Всего: 27 |
JGoodies FormLayout адназначна! Такая форма делается как 2 пальца обасфальт
-------------------- ![]() |
|||
|
||||
| PashaOvechkin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 394 Регистрация: 1.4.2007 Где: Riga, Latvia Репутация: 1 Всего: 4 |
Спасибо за советы! решил проблему
JGoodies ето классно, но в луче обходится средствами стандартной йдк... |
|||
|
||||
| Platon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1801 Регистрация: 25.4.2006 Репутация: 4 Всего: 40 |
Разработчики Sun что издеваются над нами? Они хотят сказать, что это GroupLayout будет кто-то пользовать?! Сначала я подумал, неплохое стандартное решение, держа в голове QGroupLayout от Qt Jambi. Но приглядевшись к примеру понял, что дело-то тут совершенно пропащее. Сначала меня испугали какие-то createSequentialGroup() createParallelGroup()... увидев результат я проглатил это, т.к. очень красиво получается у них без лишних настроек, как это делается в GridBagLayout. Но потом постигло настоящее разочарование: Зачем нам формировать компоненты и вертикально и горизонтально? Кто использует стандартные выравниватели GridBagLayout, или GroupLayout? они же убивают в человеке человека!!! Добавлено через 43 секунды В общем, присоединяюсь к fixxer, JGoodies - это наше всё. |
|||
|
||||
| AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 10 Всего: 118 |
Посмотри тут - Что такое Layout Manager
|
|||
|
||||
| Platon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1801 Регистрация: 25.4.2006 Репутация: 4 Всего: 40 |
хм, и где у вас аналог FormLayout?
|
|||
|
||||
| AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 10 Всего: 118 |
Не понял я вопроса. Тебе надо сделать красивую форму или что ? Если надо разобраться что надо - почитай о лейаутах и выбери то, что тебе надо. В принципе стандартных обычно хватает вполне. |
|||
|
||||
| Platon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1801 Регистрация: 25.4.2006 Репутация: 4 Всего: 40 |
В принципе да, я в основном использую BoxLayout и BorderLayout, но когда надо создать анкету, мне просто плохо становится от того, что это можно сделать только с помощью GridBagLayout.
Добавлено через 55 секунд FormLayout - это божественный менеджер выравнивания от JGoodies Добавлено через 14 минут и 1 секунду Многие согласятся, что приведенный код просто сказка для такой формочки:
|
|||
|
||||
| AlexeyVorotnikov |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 658 Регистрация: 18.6.2007 Где: Москва Репутация: 3 Всего: 18 |
GroupLayout предназначен для использования в GUI builder'ах, типа встроенного в NetBeans. -------------------- RTFM! Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification |
|||
|
||||
| Platon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1801 Регистрация: 25.4.2006 Репутация: 4 Всего: 40 |
Да, я понимаю, в IDEA это тоже есть, но как-то приноровился ручками писать.
|
|||
|
||||
| w1nd |
|
||||
![]() Вертилятор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 22.3.2006 Где: Москва Репутация: 23 Всего: 54 |
Он очень незначительно отличается от GridBagLayout ;) Вам никто не мешает создать такие же методы в своём потомке GridBagConstraints, как и в CellConstraints. Кстати, из-за дурацкой идеи авторов FormLayout отсчитывать insets внутрь, можно очень здорово попортить себе нервы, встраивая друг в друга композитные компоненты на базе того же FormLayout. Ещё, кстати, эти их xy() и xywh() обнуляют другие поля - мне это кажется неудобным.
Меня бы устроило и так:
Это сообщение отредактировал(а) w1nd - 11.3.2008, 17:36 -------------------- ![]() ![]() |
||||
|
|||||
| Platon |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1801 Регистрация: 25.4.2006 Репутация: 4 Всего: 40 |
w1nd, ваши слова заставили меня задуматься Главный мой аргумент - если мы будем оформлять таблицу 7x14 то нам придется 98 раз полностью рисовать
Утомительно, не так ли? Вместо этого FormLayout предлагает нам оформить в 1 текстовую строку повдение 7 рядов, и в 1 строку поведение 14 рядов. И потом в раслабленном виде рисовать те же 98 раз:
Добавлено через 2 минуты и 41 секунду Тем не менее, я согласен работать с GBC, но надеюсь, что FormLayout когда-нибудь войдет в SDK. |
||||||
|
|||||||
| w1nd |
|
|||
![]() Вертилятор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 22.3.2006 Где: Москва Репутация: 23 Всего: 54 |
Наилучшим вариантом был бы сплав FormLayout и GridBagLayout. Учитывая доступность исходников и того, и другого, грех не сделать -------------------- ![]() ![]() |
|||
|
||||
| Platon |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1801 Регистрация: 25.4.2006 Репутация: 4 Всего: 40 |
w1nd, Вы меня переоцениваете *CONFUSED*
В итоге получается такой код:
Это сообщение отредактировал(а) Platon - 12.3.2008, 12:19 |
||||||
|
|||||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |