|
|
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
Посоветуйте пару-тройку хороших LAF-ов, бесплатных. А то стандартный свинговский набор из JDK довольно ущербный... И еще: если приложение планируется гонять на терминальном сервере, будет ли проигрыш в скорости обмена с терминалом при применении LAF? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2006, 17:37:48 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
Vladimir KozlovПосоветуйте пару-тройку хороших LAF-ов, бесплатных. А то стандартный свинговский набор из JDK довольно ущербный...www.jgoodies.com, https://substance.dev.java.net/webstart/test.jnlp И еще: если приложение планируется гонять на терминальном сервере, будет ли проигрыш в скорости обмена с терминалом при применении LAF? А можно обосновать этот пунктик? Какова необходимость использования ТС, и почему нельзя использовать веб-интерфейс, я так понимаю, приложение интранетное, т.е. внутрикорпоративное? Неужели опять пользователю будет необходимо вываливать списки по 500 строк? И что он с ними будет делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2006, 22:50:05 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
Plaf Vladimir KozlovПосоветуйте пару-тройку хороших LAF-ов, бесплатных. А то стандартный свинговский набор из JDK довольно ущербный...www.jgoodies.com, https://substance.dev.java.net/webstart/test.jnlp jgoodies - видел. Понравилось, скачал. Но больше понравился Tonic. A substance как я понял еще пока в стадии беты находится... Plaf И еще: если приложение планируется гонять на терминальном сервере, будет ли проигрыш в скорости обмена с терминалом при применении LAF? А можно обосновать этот пунктик? Какова необходимость использования ТС, и почему нельзя использовать веб-интерфейс, я так понимаю, приложение интранетное, т.е. внутрикорпоративное? Неужели опять пользователю будет необходимо вываливать списки по 500 строк? И что он с ними будет делать? Приложение первоначально написано на делфе, сейчас портируется на яву. Юзеры все равно сидят в терминальной сессии с 1С, так что вебинтерфейс им ни к чему (плюс в гридах логика хитрозамороченная, ее на веб-парадигму пока даже не представляю как перенести). А списки по 500 строк - дык давно уж я не из тех кто такое вываливает :) Вопрос к тому, что, как я понимаю, терминал передает графику "умно", и кнопочки/тулбары с градиентами и прочие графические красивости способны эту умность ему резко понизить... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2006, 10:54:16 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
Vladimir KozlovПриложение первоначально написано на делфе, сейчас портируется на яву. Юзеры все равно сидят в терминальной сессии с 1С, так что вебинтерфейс им ни к чему (плюс в гридах логика хитрозамороченная, ее на веб-парадигму пока даже не представляю как перенести). А списки по 500 строк - дык давно уж я не из тех кто такое вываливает :)Так ведь гриды это и есть то, что вываливает таблицу пользователю по 500 и более строк. А потом бестолочи задают вопросы в конференциях "Как мне показать клиенту миллион строк" Ну какая в гридах может быть логика хитрозамороченная? Хитрее, чем страница например ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2006, 12:25:31 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
Plaf Vladimir KozlovПриложение первоначально написано на делфе, сейчас портируется на яву. Юзеры все равно сидят в терминальной сессии с 1С, так что вебинтерфейс им ни к чему (плюс в гридах логика хитрозамороченная, ее на веб-парадигму пока даже не представляю как перенести). А списки по 500 строк - дык давно уж я не из тех кто такое вываливает :)Так ведь гриды это и есть то, что вываливает таблицу пользователю по 500 и более строк. А потом бестолочи задают вопросы в конференциях "Как мне показать клиенту миллион строк" Ну какая в гридах может быть логика хитрозамороченная? Хитрее, чем страница например ? Ты думаешь что назначение грида только в том чтобы всякие недопрограммеры в нем тысячами строки крутили? :) У меня грид предназначен для редактирования табличной части документа. Но ячейки грида (их эдиторы и рендереры) кастомизируются НА ЛЕТУ в зависимости от содержимого соседних ячеек. В одной и той же ячейке "субконто2" в зависимости от содержимого ячейки "счет" может выпасть лукап с видами статей P&L, а может диалоговое окно со списком клиентов... а может колонка из соседнего грида выпадающим списком вылезти... причем модель присоединенная к этому гриду таскает словарь данных с бэк-энда, и в зависимости от него распихивает эдиторы/рендереры/форматтеры/валидаторы/листенеры. PS: логика приложения у меня и так работает, я не про нее спрашивал. А про то, насколько применение LAF-ов просадит трафик терминала. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2006, 12:44:55 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
Vladimir KozlovA substance как я понял еще пока в стадии беты находится...А Windows XP SP2 по твоему что, не бета? Но ведь пользуешься же, не жужжишь? Исправно качаешь исправления. Что по-твоему тогда бета? Бета, это законченная в своем развитии программа, к которой не выходят исправления. Да, Substance еще бета, и Java 6 еще бета, но ими как и Windows, уже пользуются и не жужжат. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2006, 13:59:00 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
PlafА Windows XP SP2 по твоему что, не бета? Но ведь пользуешься же, не жужжишь? Исправно качаешь исправления. Не пользуюсь я Windows XP SP2 :) Избавлен я от тяжкого креста ежедневной медитации на биллино поделие - у меня Debian и на серваках и на десктопе. PlafБета, это законченная в своем развитии программа, к которой не выходят исправления. Главное, в бане не сказать такое - мужики тазиками закидают ;) PlafДа, Substance еще бета, и Java 6 еще бета, но ими как и Windows, уже пользуются и не жужжат. JDK6 - пользуюсь. Правда не бетой и даже не бетой-2. Прилежно качаю свежатинку из SDN. Тем более что Netbeans-6M4 (сюрпрайз! даже не бета!) на другой JDK смотрит как Ленин на буржуазию. Но под промежуточные билды, которые уходят к юзверям, держу JDK5. Кроме того, бета за которой стоит большая и толстая контора типа Sun и бета за которой стоит группка энтузиастов - две большие разницы. В продакшне стараюсь юзать только плотнооттоптанные вещи, дабы не пришлось ночью в холодном поту вскакивать и к терминалу бежать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2006, 14:22:43 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
Vladimir Kozlov PlafБета, это законченная в своем развитии программа, к которой не выходят исправления. Главное, в бане не сказать такое - мужики тазиками закидают ;)Тьфу ты блин, думал одно, а написал другое. Я имел в виду релиз - это законченная программа. А программа, к которой выходят патчи, заплатки, это перманентная бета, еще начиная с Windows 95 все это знают ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2006, 16:36:18 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
PlafТьфу ты блин, думал одно, а написал другое. Я имел в виду релиз - это законченная программа. А программа, к которой выходят патчи, заплатки, это перманентная бета, еще начиная с Windows 95 все это знают Ну к JDK5 тоже регулярно выходят обновления, но бетой я б его не назвал... А в девелопменте я придерживаюсь такого принципа - если не уверен на 99.99% что используемая цацка не поставит систему на продакшне в позу молящегося египтятина - цацка базжалостно отбрасывается несмотря на ее блестючесть :) Или стабильные вещи с десятками тысяч инсталяций, или свой код. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2006, 16:54:31 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
"Ты думаешь что назначение грида только в том чтобы всякие недопрограммеры в нем тысячами строки крутили? :) " Убило... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 09:08:59 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
alexx726"Ты думаешь что назначение грида только в том чтобы всякие недопрограммеры в нем тысячами строки крутили? :) " Убило... Дык, если бы на дельфе было написано "детям до 18 лет смотреть запрещается" и "Минздрав предупреждает: неумеренный датабиндинг может вызвать необратимые повреждения головного мозга" - сейчас бы мы не имели то что имеем (http://sql.ru/forum/actualthread.aspx?tid=351180). А свинговский грид именно _красив_ - он не пытается "помочь программисту". Надо вложенные заголовки - пишешь модель колонок и рендерер, надо непрокручиваемые столбцы - пишешь наследника от скроллвью. И никаких управлений адвансед-поведением через десятки непонятнокакработающих пропертей, всё в своём коде и всё управляемо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 10:03:16 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
Vladimir KozlovА свинговский грид именно _красив_ - он не пытается помочь программисту. О! Наконец-то мы узнали истинный смысл стандартных подпрограмм. Они не должны помогать программисту, они должны быть красивы истинно внутренней красотой, красотой дао. Как буддист, повторяющий "падме хум" десять тысяч раз в день, так и программист, реализующий толпы одинаковых наследников от скроллвью, совершенствуется духовно, а уж если он полез в интернет и нашел 9285 равно кривых реализаций resultset-модели для JTable, это просто нирвана. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 10:21:39 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
softwarer Vladimir KozlovА свинговский грид именно _красив_ - он не пытается помочь программисту. О! Наконец-то мы узнали истинный смысл стандартных подпрограмм. Они не должны помогать программисту, они должны быть красивы истинно внутренней красотой, красотой дао. Как буддист, повторяющий "падме хум" десять тысяч раз в день, так и программист, реализующий толпы одинаковых наследников от скроллвью, совершенствуется духовно, а уж если он полез в интернет и нашел 9285 равно кривых реализаций resultset-модели для JTable, это просто нирвана. Гм, "помогать программисту" в оригинале было написано в кавычках, ты обратил внимание? Дельфийский датасет/грид в этом плане ничуть не лучше чем "9285 равно кривых реализаций resultset-модели для JTable". И зачем толпы одинаковых наследников-то? Мы ж не демографическую проблему решаем; впрочем если за каждого наследника от скроллвью начиная со второго будут платить по 250 тысяч - тогда с удовольствием :) А так - один раз написал, отладил, запхнул в jar, засунул в bean palette и забыл. Но при этом знаешь, что если попрут глюки то ковырять будешь свой код, а не судорожно листать тысячи строк кода дельфийского VCL в поисках "ну чего ж эта зараза криво отрисовывается". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 10:30:38 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
Vladimir Kozlov Но при этом знаешь, что если попрут глюки то ковырять будешь свой код, а не судорожно листать тысячи строк кода дельфийского VCL в поисках "ну чего ж эта зараза криво отрисовывается". Железобетонная... логика ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 11:40:00 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
Vladimir Kozlov alexx726"Ты думаешь что назначение грида только в том чтобы всякие недопрограммеры в нем тысячами строки крутили? :) " Убило... Дык, если бы на дельфе было написано "детям до 18 лет смотреть запрещается" и "Минздрав предупреждает: неумеренный датабиндинг может вызвать необратимые повреждения головного мозга" - сейчас бы мы не имели то что имеем (http://sql.ru/forum/actualthread.aspx?tid=351180). А свинговский грид именно _красив_ - он не пытается "помочь программисту". Надо вложенные заголовки - пишешь модель колонок и рендерер, надо непрокручиваемые столбцы - пишешь наследника от скроллвью. И никаких управлений адвансед-поведением через десятки непонятнокакработающих пропертей, всё в своём коде и всё управляемо. Дык убило как раз то, что я как и всякий недопрограммист, ХОЧУ показать пользователю тысячи записей. И самое идиотское, что все эти недопользователи хотят их увидеть. Но не все сразу!!! И в остальных недоязыках у меня такая возможность есть. ВЕЗДЕ, кроме "красивого" JTable. Который почему-то решает за меня - "я(JTable) встал на последнюю запись, поэтому данных больше не будет". Или при paintComponent() например хочет также отрисовать невидимые ячейки :)) (ну тут уж я его совсем не понимаю) Вот и приходится ему всякие фичи рисовать. И реализовывать 9465-ую равнокривую реализацию абсолютно бесполезного ResultSet (кроме MetaData), который настолько умен, что не дает мне вьюхи например изменять (он за меня решает, что он умеет редактировать, а что нет - тоже внутренне красив). А что делать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 13:35:17 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
alexx726 Дык убило как раз то, что я как и всякий недопрограммист, ХОЧУ показать пользователю тысячи записей. И самое идиотское, что все эти недопользователи хотят их увидеть. Но не все сразу!!! И в остальных недоязыках у меня такая возможность есть. ВЕЗДЕ, кроме "красивого" JTable. JTable - это раб, он за тебя не думает. Он по каждому вопросу бежит к тебе и спрашивает: "Большой белый Хозяин, а тут как быть?". И если ты ему правильно объяснишь как быть - он сделает то что ты хочешь. И не сделает больше того что ты ему объяснил. alexx726 Который почему-то решает за меня - "я(JTable) встал на последнюю запись, поэтому данных больше не будет". Или при paintComponent() например хочет также отрисовать невидимые ячейки :)) (ну тут уж я его совсем не понимаю) Вот и приходится ему всякие фичи рисовать. JTable понятия не имеет о последней записи! Он про количество записей узнает из модели. Сколько в модели в public int getRowCount() вернешь - столько и нарисует. А перекрывая в модели public Object getValueAt(int row, int col) ты можешь показывать записи не все сразу или реализовывать нужное тебе поведение. И это дает офигительную гибкость. alexx726 И реализовывать 9465-ую равнокривую реализацию абсолютно бесполезного ResultSet (кроме MetaData), который настолько умен, что не дает мне вьюхи например изменять (он за меня решает, что он умеет редактировать, а что нет - тоже внутренне красив). А что делать... Не трогай ResultSet. Прочитал данные в модель - и прибей его чтоб глаза не мозолил. А редактирование засунь в перекрытый public void setValueAt(Object value, int row, int col) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 14:31:27 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
секундочку, секундочку... Я понимаю все про модель и про JTable. Просто когда я говорю - JTable, я модель и подразумеваю. Но как же я могу прибить ResultSet ежель мне из него данные тягать надо по мере перемещения по табличке? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 15:13:18 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
alexx726секундочку, секундочку... Я понимаю все про модель и про JTable. Просто когда я говорю - JTable, я модель и подразумеваю. Но как же я могу прибить ResultSet ежель мне из него данные тягать надо по мере перемещения по табличке? Ой, да сколько там тех данных-то... закэшируй их в наследнике от модели и все дела :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 16:21:27 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
А как это реализовано в Oracle ADF? Nai tiruvantel ar varyuvantel i Valar tieyanna nu vilya ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 16:38:01 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
данных-то у меня как раз тыщ 200 в общем случае и наберется, если все показать )) а ADF реализовано как в 5600-ом кривом варианте - "сделаем сначала select count(*) из запроса", после чего я и снес JDeveloper вместе c ADF ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 16:59:57 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
alexx726данных-то у меня как раз тыщ 200 в общем случае и наберется, если все показать )) Пусть печатают через генератор отчетов, кладут в авоську и медитируют дома с карандашом :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 17:22:26 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
Vladimir KozlovГм, "помогать программисту" в оригинале было написано в кавычках, ты обратил внимание? Обратил, как ты наверное догадался. И подсветил твою замечательную логику: вместо того, чтобы учиться пользоваться стандартным решением, пишем собственное. Vladimir KozlovДельфийский датасет/грид в этом плане ничуть не лучше чем "9285 равно кривых реализаций resultset-модели для JTable". Хм. Слова "дельфийский датасет/грид" сами по себе довольно забавны и показывают отличное знание, но это отдельный вопрос. Лучше они - хотя бы тем, что их 0001, а не 9285. Vladimir KozlovИ зачем толпы одинаковых наследников-то? Дык строго в соответствии с описанным тобой алгоритмом. Vladimir KozlovА так - один раз написал, отладил, запхнул в jar, засунул в bean palette и забыл. Уже лучше. Итого - пользуешься своей кривой поделкой вместо стандартной, уже написанной и отлаженной. Писать свое интересно, опять же, на вопрос начальника "чем ты таким занимался, что ни хрена не готово", можно ответить "компонент писал". Потом ты уйдешь, придет другой, выскажет все, что думает о кривой поделке, выбросит и начнет делать собственную. Опять же, будет чем заняться на работе.. Vladimir KozlovНо при этом знаешь, что если попрут глюки Прежде всего, я предпочитаю знать, что глюки не попрут. Это знание, которое у меня было в VCL, и которого я наивно ожидал, начиная работать с JDK. Разочаровался :( Vladimir Kozlovто ковырять будешь свой код, а не судорожно листать тысячи строк кода дельфийского VCL в поисках "ну чего ж эта зараза криво отрисовывается". Я был бы просто счастлив, если бы все вокруг писали код на уровне дельфийского VCL. Чужой код, в котором приходится ковыряться в поисках "ну чего ж эта зараза криво отрисовывается" в 99% случаев написан куда хуже, и ковыряться в нем куда противнее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 17:39:48 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
Vladimir KozlovПрочитал данные в модель - и прибей его чтоб глаза не мозолил. Угу. Пока резалтсет на двести тысяч записей читается в модель, каждый из десяти тысяч пользователей как раз успеет чайку попить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 17:42:19 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
У меня работа атрибута rangeSize для итератора не вызывала нареканий. С темы сошли полностью. Nai tiruvantel ar varyuvantel i Valar tieyanna nu vilya ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 17:43:13 |
|
||
|
Где взять хорошие LAF-ы?
|
|||
|---|---|---|---|
|
#18+
softwarer Обратил, как ты наверное догадался. И подсветил твою замечательную логику: вместо того, чтобы учиться пользоваться стандартным решением, пишем собственное. Вместо того чтобы пользоваться стандартным решением, которое заточено под общенародные нужды, пишем своё с требуемым функционалом. А "пользоваться стандартным решением" в применении к дельфе означает научиться нажимать кнопку мыши над палитрой компонентов и отпускать над дизайнером формы, после чего вынуть палец из носа и засунуть в проперти-инспектор. softwarer Vladimir KozlovДельфийский датасет/грид в этом плане ничуть не лучше чем "9285 равно кривых реализаций resultset-модели для JTable". Хм. Слова "дельфийский датасет/грид" сами по себе довольно забавны и показывают отличное знание, но это отдельный вопрос. Да, за время работы с дельфёй я узнал что там есть датасет с наследниками типа ттабле, тквери, и есть грид который к нему подключается через датасорс. Это сакральное знание я буду трепетно хранить всю жизнь :) softwarerЛучше они - хотя бы тем, что их 0001, а не 9285. Один гнилой помидор ничем не отличается от 9285. softwarer Vladimir KozlovА так - один раз написал, отладил, запхнул в jar, засунул в bean palette и забыл. Уже лучше. Итого - пользуешься своей кривой поделкой вместо стандартной, уже написанной и отлаженной. Писать свое интересно, опять же, на вопрос начальника "чем ты таким занимался, что ни хрена не готово", можно ответить "компонент писал". Пользуюсь поделкой которая работает так как мне надо и в коде которой я свободно ориентируюсь. softwarer Потом ты уйдешь, придет другой, выскажет все, что думает о кривой поделке, выбросит и начнет делать собственную. Опять же, будет чем заняться на работе.. Если написано левой ногой - выкинет и отматерит. А если в соответствии с принятой парадигмой - почитает 5 минут комменты в коде и пофиксит. softwarer Vladimir KozlovНо при этом знаешь, что если попрут глюки Прежде всего, я предпочитаю знать, что глюки не попрут. Это знание, которое у меня было в VCL, и которого я наивно ожидал, начиная работать с JDK. Разочаровался :( Старик Дейкстра сказал - глюки попрут. Значит попрут :) softwarer Vladimir Kozlovто ковырять будешь свой код, а не судорожно листать тысячи строк кода дельфийского VCL в поисках "ну чего ж эта зараза криво отрисовывается". Я был бы просто счастлив, если бы все вокруг писали код на уровне дельфийского VCL. Чужой код, в котором приходится ковыряться в поисках "ну чего ж эта зараза криво отрисовывается" в 99% случаев написан куда хуже, и ковыряться в нем куда противнее. На уровне того кода который написал Андерс Хейлсберг сотоварищи - да. Полностью с тобой согласен. А на уровне того кода на котором написаны 90% хлама на www.cooldelphycomponents.vasyapupkin.org - эхехехехе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 17:58:37 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=34088714&tid=2146756]: |
0ms |
get settings: |
13ms |
get forum list: |
29ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
69ms |
get topic data: |
18ms |
get forum data: |
4ms |
get page messages: |
97ms |
get tp. blocked users: |
2ms |
| others: | 282ms |
| total: | 526ms |

| 0 / 0 |
