| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java ME (J2ME) > Тестирование контрола DataGrid |
| Автор: VOS 31.1.2007, 15:02 | ||
| В одном довольно большом моем проекте возникла необходимость реализации клиентской части, которая работала бы на мобильных телефонах. Одним из ключевых элементов этой клиентской части является DataGrid, предназначенный для хранения, отображения и манипулирования данными в плоской двумерной таблице. В Java (тем более J2ME) я новичок, поэтому с удивлением обнаружил, что этот элемент не входит в состав стандартных контролов. Поиск не дал приемлемых результатов, поэтому пришлось реализовывать самому. Тестовый мидлет прикреплен к сообщению. По идее эта версия должна работать на MIDP 1.0 (extends Canvas) (для MIDP 2.0 будет и версия extends CustomItem) Интересует: - приемлимо ли он работает на телефонах с MIDP 1.0 (мерцание и т.д. при включенном/отключенном меню Draw buffered) - список телефонов на которых работает - мнения/предложения/пожелания Если контрол кого-то заинтересует, то вот краткое описание
|
| Автор: javastic 31.1.2007, 16:40 |
| Компонент очень понравился. Глюков не заметил. Добро пожаловать на форум! |
| Автор: VOS 31.1.2007, 16:57 |
| Спасибо, жаль поздно нашел Ваш форум. |
| Автор: javastic 31.1.2007, 17:27 |
| Лучше поздно, чем никогда... ;) |
| Автор: Vladimir35 1.2.2007, 10:40 | ||
К сожалению, это известная проблема. Вот http://www.mobile-mir.com/forum/viewtopic.php?t=615 Отсортированно по языку и крутости форума. Забавно, что сановский форум туда не попал (и форумы производителей тоже). |
| Автор: slider3d 1.2.2007, 14:33 |
| И мне понравился. Вот только надо вовремя остановится. Потому что лучшее враг хорошего. |
| Автор: Samuil 2.2.2007, 04:50 |
| VOS, Молодец, мне тож оч. понравился |
| Автор: VOS 2.2.2007, 10:44 |
| Спасибо за отзывы. И отдельное спасибо Vladimir35 за ссылки. Вечером добавил горизонтальный скроллиг и там по-мелочи. Правда горизонтальную полосу прокрутки не успел нарисовать, но скроллинг работает. Новый пример во вложении. Если не сложно, напишите на каких телефонах запускали. |
| Автор: javastic 2.2.2007, 11:52 |
| SE k610i |
| Автор: Vladimir35 2.2.2007, 12:31 |
| А опенсорс будет? Или хотя бы как библиотека? А собственные клетки можно будет подключать? |
| Автор: VOS 2.2.2007, 14:18 | ||
| На следующей неделе планирую довести его до релиза. Мне важно его оттестировать (см. верхний пост), поэтому приглашаются те, кто может помочь в этом ну и в написании/корректировании документации на английском По поводу того как будет распространяться в дальнейшем (free или коммерч.), я еще не решил, т.к. не знаю рынка и как это делается Буду рад получить консультацию. В библиотеку помимо DataGrid и TableLoader (теги и xml) планирую включить модуль синхронизации с сервером по HTTP с возможностью шифрования трафика. Клетки/строки и т.д. могут подключаться например так:
|
| Автор: javastic 2.2.2007, 15:14 |
| ну тогда ещё надо оформить стандартную доку по классам, методам и интерфейсам. |
| Автор: slider3d 2.2.2007, 23:20 |
| VOS не думаю что имеет большую коммерческую ценность. Каждый более - менее опытный программист без труда реализует DataGrid а новички вряд-ли будут покупать что-то. И в NetBeans есть реализовано что-то подобное.Правда по красоте им до тебя далеко(respect). Есть небольшое предложение. Например, если таблица содержит клетку с большим объемом информации сделай так чтобы при наведении курсора по прошествии некоторого времени всплывала как бы подсказка из содержимим которое не видно. Ну, плохо выразился, но идея понятна? |
| Автор: javastic 2.2.2007, 23:34 |
| Согласен, было бы не плохо вывести это в заголовок - движущийся. |
| Автор: Vladimir35 3.2.2007, 16:07 | ||||
Я имел в виду что-то вроде
То есть для клеток есть интерфейс Cell, и я его реализуя, мог бы добавлять свои собственные клетки. Как обстоят дела с объединенными клетками? Что происходит, если таблица не правильно сформирована? |
| Автор: Samuil 4.2.2007, 06:55 |
| Vos, А еще балоб лучше если строка длинная, то она сама бы автосколилась. Типа туда сюда ходила, такая реализация есть в программах SMSBOX. |
| Автор: VOS 5.2.2007, 11:03 |
| Slider3D - идея понятна, очень понравилась. Типа Hint для ячейки. Samuil, JavaStick Это типа как в SE ? Согласен. Можно 2 режима - HINT и AUTOSCROLL. Vladimir35, такого интерфейса пока нет, при создании таблицы надо сразу указывать кол-во полей. Но это исключительно из-за спешки (надо проект сдавать). В Next Version (следующий понедельник) динамические поля обязательно будут, притом что практически ничего менять не надо, т.к. видимые/невидимые уже поддерживаются. Но отрисовку ячеек и т.д. можно переопределять. Насчет объединенных ячеек. Пока недодумал окончательно идеологию. Хочу посоветоваться. Планирую так. 1) в Record ставить признак объединенных ячеек 2) При отрисоке закрашивать все подряд идущие ячейки с этим признаком и рисовать строку=cell0+" "+cell1 и т.д. под clipWidth равным соответственно сумме Width этих ячеек Помимо этого хочу добавить возможность отдельно указывать кол-во Lines в фиксированных Row и Footer. По поводу open source. Для Free проектов будет Free, для граждан бывшего СССР для любых проектов будет Free (если русский знают, то Free). Единственное требование, ссылка на автора. Исходники будут доступны после релиза. А релиз после анализа кода профессиональными J2ME программистами (сегодня отдаю). |
| Автор: Rais96 7.2.2007, 09:40 |
| Re- список телефонов на которых работает на Siemens CX65(MIDP2.0) не работает! |
| Автор: VOS 7.2.2007, 11:14 |
| Rais96 - уточните симптомы, пожалуйста. После Вашего сообщения проверил на Siemens C75, на нем не реагировал джойстик. Исправил, теперь работает. Если не сложно, проверьте прикрепленный вариант. Спасибо за информацию! |
| Автор: Rais96 7.2.2007, 14:38 |
| Джойстик раньше не работал. Сейчас работает! |
| Автор: VOS 13.2.2007, 10:06 |
| Уважаемые, кто может помочь в переводе документации на английский и проверке кода (только DataGrid, остальные модули кардинально переделываю)? Боюсь выкладывать непроверенный, т.к. сам недавно в j2me, легко мог не учесть "особенности" разных производителей и т.д. В свое время рискнул, взял библиотеку чужую (С++) и потом неделю искал глюк, а найти было сложно, т.к. вместо InterlockedIncrement использовался обычный ++. Не хочу, чтобы потом, когда кто-нибудь будет ее юзать, обо мне те же слова говорил, что я о том разработчике |
| Автор: VOS 16.2.2007, 15:48 |
| Исходники контрола, документация и т.д. размещены на http://www.grid2me.narod.ru Просьба сообщать о всех замеченных глюках, а также буду рад замечаниям и предложениям. |
| Автор: VOS 7.3.2007, 13:54 |
| Следующая версия там же. Добавлена поддержка коммуникаторов (реакция на стилус). Проверялось на I-mate (Windows Mobile 2003). |
| Автор: kapi 21.3.2007, 18:04 |
| инсталю на Моторолу В3Х - матерится. На ємуляторах Мотора выбрасует эксепшны. А вот на эмуляторе Сименса запустил, что за фигня ?? |
| Автор: VOS 21.3.2007, 21:36 |
| Спасибо за информацию. Сейчас готовлю следующую версию. В ней постарался учесть большинство поступивших предложений, в том числе высказанных на этом форуме. Моторолы у меня нет, проверить на ней не могу. Но есть подозрение, что с загрузкой изображений в демонстрационном примере может быть что-то не так. Проверялось на нескольких Nokia, Sony Ericsson, Siemens. На http://www.grid2me.narod.ru лежат исходники прежней версии, в которых исправлены некоторые баги. Буду признателен, если поможете с тестированием на моторолах. |
| Автор: Dancer 21.3.2007, 22:01 |
| Ну, не знаю, у меня на моторах работало. Одна проблемка с Моторами - это коды кнопок другие, нежели обрабатываются в приложении. Когда ещё исходников не было, я это дело декомпилил и под себя пересобирал. После этого на Моторах, вообще нормально работало. Особо не тестил, поэтому дельного вряд ли чего посоветую. Но то что на Моторах это работает - готов поручиться. |
| Автор: VOS 22.3.2007, 12:52 |
| Если не сложно, укажите коды кнопок для Моторолы. |
| Автор: kapi 22.3.2007, 19:19 |
| VOS, motorola SoftKeys : Left : +/- 21 Right: +/- 22 взависимости от модели. |
| Автор: VOS 23.3.2007, 09:41 |
| Спасибо. |
| Автор: VOS 28.3.2007, 10:35 | ||
| В связи с сообщениями по Мотороле, переработал обработчик клавиш и тестовый мидлет. Юзаю теперь так:
Размещено здесь: http://www.grid2me.narod.ru Просьба, присылайте модели телефонов на которых проверяли работоспособность. |
| Автор: Samuil 29.3.2007, 00:10 |
| VOS, сделай скрол, а то как -то не удобно, порой достает |
| Автор: VOS 29.3.2007, 10:19 |
| Делаю и горизонтальную полосу прокрутки и чтобы строка сдвигалась. И для footer можно выставлять несколько строк (иногда удобнее чем скролл строки). |
| Автор: VOS 20.6.2007, 10:00 |
| 1. Добавлен стиль меню (перемещения курсора, дизайн и т.д.) 2. Добавлен Header (стат. текст, располагается перед DataGrid). Автоматически форматируется по правилам WordWrap. 3. Переработан движок, как следствие значительно уменьшено потребление системных ресурсов. http://grid2me.narod.ru |
| Автор: JackSoft 29.10.2007, 15:06 |
| К сожалению, на оф.сайте исходники убраны, а очень хотелось бы заюзать такой датагрид в своем проекте... Есть люди, которые успели получить клас? P,S, Автору написал, но пока ответа не получил... |
| Автор: VOS 29.10.2007, 17:22 |
| Исходники отправил на мыло. Присылайте модели телефонов, на которых проверяли работоспособность. |
| Автор: zss 29.11.2007, 21:38 |
| VOS, а можно мне тоже библиотеку ? |
| Автор: VOS 30.11.2007, 10:39 |
| Запустите на своем телефоне тестовый мидлет и пришлите на почту [email protected] результат (работает или глючит). Сразу вышлю исходники. На сайте исходники убрал, потому что не знаю как работает на других телефонах/коммуникаторах, на которых у меня нет возможности проверить. Например выяснилось, что на коммуникаторах с Windows Mobile 2003 можно ставить эмулятор weme-wm2003-arm-midp20-5.7.1-P-20040723-1833.exe, но он тормозит на WM 2005/2006. А вот при установке midp20en-6_1_0.cab все просто летает. |
| Автор: VOS 19.12.2007, 14:22 |
| В DataGrid добавлен стиль TabbView (работа с вкладками). В этом случае заголовок DataGrid преобразуется в вид TabbedPane (как в Swing ) или TabbedNotebook (как в Delphi). Интерфейсно напоминает компонент Sony Ericsson на вкладке Параметры. Позволяет менять шрифт, цвет заливки, текста, границ, активные/неактивные картинки на вкладках и т.д. Исправлены мелкие баги. Исходники новой версии буду высылать на след. неделе, т.к. не добавил пока поддержку стилуса на вкладках. Просьба сообщать о всех замеченных глюках, а также буду рад замечаниям и предложениям Пример во вложении. |
| Автор: JackSoft 19.12.2007, 14:34 |
| Очень качественно! Motorola L7e/L7i, Fly MP220, Nokia S40 - все работает. Жду релиза! P.S. Очень хорошо смотрится версия на Нокиевском Симбиане! |
| Автор: VOS 19.12.2007, 14:51 |
| Спасибо! Особенно за Fly MP220! |
| Автор: VOS 19.12.2007, 16:31 |
| Добавил стилус. |
| Автор: zss 19.12.2007, 20:33 |
| VOS, прикольно |
| Автор: JackSoft 20.12.2007, 09:45 | ||
| VOS, есть пожелания. 1. Сделать что-то типа фильтра на грид. Тоесть в грид вывести все значения, а потом дать условие на ячейку или пару ячеек и Update(). Очень было бы удобно налету перерисовывать грид на тех же данных... 2. Зарисовка ячеек таблицы другим цветом, изменение шрифта с автоподбором ширины. Счас делаю все это наследыванием, но было бы удобно иметь такие методы в базовом классе. 3. Вставлять в ячейку картинки (точно так же счас решается наследованием) и картинку с текстом вместе. И огромнейшее спасибо за компоненту. Добавлено @ 09:47
Читай еще раз что написал, VOS: Исходники новой версии буду высылать на след. неделе, т.к. не добавил пока поддержку стилуса на вкладках. Очень хороший подарок к Новому Году. VOS, дай номер кошелька WMZ поддержу твой проектик на пару баксов. Пива заслужил! |
| Автор: VOS 23.12.2007, 21:03 | ||
| zss, исходники не выкладываю, а отправляю по запросу исключительно ради того, чтобы узнать как работает на разных моделях телефонов/смартфонов/коммуникаторах, какие возникают проблемы. Бренды в принципе все отработаны, но хотелось бы еще понять как работает на таких как Alcatel, Hayer, LG ... ну и Vertu Сейчас около 50 моделей протестированы. JackSoft, достаточно Вашего спасибо Понемногу перестраиваю идеологически компоненту в стиле Java. В TabView режиме чтобы добавить картинки на вкладках теперь надо лишь реализовать такой интерфейс
Аналогично думаю сделать и с отрисовкой конкретных ячеек. Для фильтра будет интерфейс IGridFilter с по меньшей мере одним методом boolean isFilteredRecord (int y); Если вернет true, запись отображается в гриде, false - нет. Ну а внутри любую логику вставляйте. |
| Автор: VOS 24.12.2007, 10:04 |
| Кому я исходники уже высылал, то автоматом вышлю новую версию. Все почтовые адреса у меня сохраняются. Релиз через пару дней. Вчера добавил стили для вкладок- фиксированной ширины и autoresize по ширине экрана. Думаю делать ли скроллируемые вкладки (если их кол-во не влезает на экран) в этом релизе. |
| Автор: VOS 26.12.2007, 12:38 | ||||
| 1. Добавил возможность на лету менять шрифты с автоподбором ширины. 2. Режим Custom Draw для ячеек. Для этого надо реализовать интерфейс IDrawCell
Например так в режиме Custom Draw можно отрисовывать картинку и текст в одной строке, менять цвета и т.д.:
3. Сгенерировал новую доку и выложил на сайте. JackSoft, к сожалению фильтр не успел добавить, уже в следующем году. Пример во вложении. Начал рассылать исходники. Если кому до завтра не дойдут, отпишитесь, pls. |
| Автор: VOS 9.1.2008, 17:14 | ||
| Исправил мелкие ошибки, добавил возможность градиентного заполнения (меню Custom Draw). Градиент на эмуляторе коряво отображается, а на телефоне нормально. Взял пример, который работал с плавающими числами и преобразовал его для CLDC 1.0 Посмотрите, pls, может у кого есть получше реализация. Но мне надо чтобы работал на MIDP 1.0
|
| Автор: VOS 10.1.2008, 12:41 |
| Спасибо уважаемым администраторам за прекрасную возможность создания собственных блогов. Все новости/изменения и т.д. теперь буду выкладывать на http://vingrad.ru/blogs/grid2me |
| Автор: JackSoft 21.4.2011, 19:04 |
| проект умер? :( |