![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| DOKA |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 13.8.2006 Репутация: нет Всего: нет |
Доброго времени суток!
Для клипания окошек испольую Swing и какой-то стандартный плагин для Eclipse. Вот в чём проблема: после использования данного плагина, код получается похож на минное поле, т.е. менять код окошек нельзя (иначе перестанет работать оконный дизайнер), а если не менять, то визуально это бардак! А ведь там должен ещё присутствовать и мой код! Идея следующая: отделить код _создания_ окошек от общего кода программы, как, к примеру в Delphi. Там описание окон содержится в файлах *.dfm (Delphi Form), а сам код, который пишется программистом лежит в *.pas. Возможно ли такое в Java? Желательно в SWING. Кстати попутный вопрос: чем мжет быть чревато использование NullLayout (c GridBagLayout я просто задолбался - оконные элементы визуально расставлять неудобно)? Спасибо. |
|||
|
||||
| Шмель |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 179 Регистрация: 16.4.2004 Репутация: 5 Всего: 18 |
Open Source XML UI Toolkits in Java
Насколько я понял, NullLayout - это отсутствие менеджера компоновки. То есть размещение компонентов проводится по жестко координатам. Отсюда вытекают такие проблемы: на разных система компоненты (например, кнопки) могут иметь разные размеры; добавление, удаление, перемещение компонентов становится реальным геморроем за счет всё тех же координат - попробуй высчитать их для каждой системы, где твоё приложение будет запускаться. Короче говоря, абсолютное позиционирование имеет больше минусов, чем плюсов - зависимость от системы, зависимость от пользовательских настроек (дефолтный шрифт, LAF-тема и т.д.) ну и до кучи - изменение размеров окна не влечет за собой автоматическое изменение положения и размеров (если нужно) компонентов. --------------------
будешь на Земле - заходи |
|||
|
||||
| carper |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 2.3.2005 Репутация: 1 Всего: 8 |
1. Убираем "какой-то стандартный плагин для Eclipse" (VE скорее всего), 2. Учимся писать GUI без костылей, используя IDE разве что как удобный менеджер для визуального рисования ПРОЕКТА (по созданию реальной формы, "проект" можно выбросить). 3. Читаем про MVС и выносим собственно оконный интерфейс куда угодно - хотите просто в отдельные классы, хотите дополнительно с применением XML для сериализации. 4. Долго ругаемся на меня, JAVA, IDE, менеджеры компоновки, расслабившись переходим к п.5 Если расслабится не удалось переходим к п.2. 5. Понимаем, что писание GUI ручками совсем не равно изобретению велосипеда. 6. Наслаждаемся четким, ясным и простым написанием GUI под Swing. Не понимаем как можно было раньше так слепо позволять всяким редакторам ваять кучу совершенно безобразного кода. 7. Понимаем, что все же есть много случаев, когда надо просто наваять пару окошек. 8. Переходим к п.4 и ждем что может кто-нибудь, когда-нибудь из создателей IDE поймет, что то безобразие, что они предлагают под видом визуальных редакторов, стоит сделать хотя бы чуть-чуть поприличнее. Ждем, когда они поймут, что все это хорошо будет продаваться не по сумасшедшим деньгам.... Мечтаем дальше ... Все вышеперечисленное оффтопом считать отказываюсь - при текущем состоянии дел все IMHO именно где-то так и обстоит. Что касается NullLayout - то вам уже все объяснили, но скажу еще проще - из всех плохих вариантов это самый плохой, что можно только придумать. Уж лучше тогда IDE. |
|||
|
||||
| y3u |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 440 Регистрация: 9.9.2006 Где: Москва Репутация: 1 Всего: 13 |
carper, +1, держи в репутацию
-------------------- В нашей стране настаивать на кореньях, черной смородине, лимонных корках - гораздо эффективнее, чем на правах |
|||
|
||||
| DOKA |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 13.8.2006 Репутация: нет Всего: нет |
Шмель, Thx, завтра попробую. Добавлено @ 22:24
Спасибо за ответ. Всё понимаю, что код хорошо бы писать руками, но тем не менее период подросткового перфекционизма у меня прошел и есть цель быстро клипать окошки, которые будут, пусть не идеально с точки зрения кода, но корректно работать. Если мусор, нагенерённый GUI-designer'ом будет за ширмой, меня это устроило бы. В данный момент из-за неудобства Eclipse в этом плане, как раз и пишу код руками. Но это дооо-о-о-оолго |
||||
|
|||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Ты просто, наверное, не видел NetBeans-вый Matisse. Я бы посоветовал среди GUI плагинов для эклипс Matisse4Eclipse. Но он стоит денежку. Но в NetBeans он, конечно же, бесплатный. |
|||
|
||||
| Foo |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 164 Регистрация: 20.10.2006 Репутация: нет Всего: 3 |
Помоему с помощью GUI редактора нельзя сделать нормальный серьезный интерфейс.
И даже если
то лучше их клепать без гуи редактора, и никак это не будет быстрее с помощью редактора, если разобраться нормально со свингом, а лучше всего ещё изучить jgoodies фреймворк и делать профессиональный гуи очень быстро. Мне знаком случай когда 2 конкурирующие фирмы писали один проект, одна на Delphi другая на Java. Фирма которая писала на Java оставила далеко позади вторую по качеству гуи. --------------------
qip |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java tools & IDE's | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |