![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
PashaOvechkin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 394 Регистрация: 1.4.2007 Где: Riga, Latvia Репутация: 1 Всего: 4 |
Привет!
есть свинг фрейм (его можно посмотреть в атачменте) Фрейм уже готов, нужно его немного переделать... Layouts знаю плохо, поетому необходим совет Вот сдесь можно посмотреть код Фреима
На самом деле всё очень просто... Основной шаблон во фреиме ето -> GridBagLayout В контеинере фреима есть несколько панелек с рамкой, в каждой из них исполь зуется шабло BoxLayout. Проблема заключается в том, что ети самые панели могу содержать в себе много леиблов в столбик... А если леиблов много, метод pack(); основного темплейта фреима(GridBagLayout) сжимает всё так, что кнопки становятся узкими, не видно содержимого панелей.... Выглядит ужасно! Подскажите пожалуйста какой шаблон выбрать или какой нить другой workaround... ![]() Спасибо! Это сообщение отредактировал(а) PashaOvechkin - 4.2.2008, 16:07 Присоединённый файл ( Кол-во скачиваний: 24 ) ![]() |
|||
|
||||
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. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |