Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> "Шапка" VirtualTreeView, нужен специфический Header 
V
    Опции темы
Poseidon
Дата 3.10.2008, 14:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



Нужна таблица со "специфической" шапкой. Такая таблица есть у Касперского в восьмой версии его продуктов. А конкретно, нужно реализовать вот такое:

user posted image
как видно, есть 2 положения. Либо столбцы как бы свернуты, либо они развернуты. Когда они "свернуты", в столбце должно отображаться одно, а когда разворачиваешь, то из одного столбца получается еще несколько (в данном примере 3) и в этих столбцах уже совсем другое.

Хотелось бы узнать, умеет-ли такое VirtualTreeView (потому как VirtualTreeView уже применяется и не очень хочется все переделывать)? Если не умеет, то кто умеет?


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
Bose
Дата 3.10.2008, 15:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1458
Регистрация: 5.3.2005
Где: Riga, Latvia

Репутация: 23
Всего: 51



Virtual TreeView умеет только простые заголовки рисовать. 

Хотя я где-то видел доработку дерева позволяющую делать группы столбцов. Но там без возможности сворачивать/разворачивать. Приаттачил. 


Присоединённый файл ( Кол-во скачиваний: 49 )
Присоединённый файл  GHFStringTree.zip 42,30 Kb
PM MAIL WWW Skype   Вверх
Bose
Дата 3.10.2008, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1458
Регистрация: 5.3.2005
Где: Riga, Latvia

Репутация: 23
Всего: 51



DeveloperExpress Pivot Grid умеет что-то подобное делать.

http://www.devexpress.com/Products/VCL/ExP...id/Features.xml

Это сообщение отредактировал(а) Bose - 3.10.2008, 15:19
PM MAIL WWW Skype   Вверх
aktuba
Дата 3.10.2008, 18:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: 16
Всего: 38



Честно говоря - подобное не делал, но самостоятельно отрисовывал шапки. Думаю и у тебя можно реализовать... Чуть позже попробую.


--------------------
user posted image
PM MAIL WWW Skype   Вверх
Poseidon
Дата 6.10.2008, 09:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



Bose, DevExpress платные...  smile 
GHFStringTree не плох, но все же нужно сворачивание. Иначе замена компонента не целесообразна (много чего нужно менять, т.к. все уже реализовано на VT, а нужного эффекта все-равно не будет).

aktuba, задавая этот вопрос, я в глубине души надеялся на твою или Quadr0 помощь smile Других виртуалтривьювщиков на винграде я не знаю  smile

Добавлено через 8 минут и 34 секунды
Что бы было более понятно опишу что вообще нужно. В программе есть таблица в которой отображаются статьи затрат по договорам. Программой (и этой таблицой) пользуются и экономисты и бухи и все кому не лень smile. Так вот есть статья "Накладные расходы". Бухам и некаторым экономистам этого хватает. А вот есть такие люди, которым надо (для отчетов, еще хз для чего) эти накладные расходы еще разбивать. Т.е. там все в куче собрано, а им надо конкретно, сколько в этих накладных расходах Зарплаты, сколько налогов, сколько амортизации и т.д. В БД это все есть. На данный момент сделано все еще одной таблицей. Т.е. кому надо узнать, те жмут кнопку и им показывается отдельное окно где эти накладные расходы уже разбиты. Вроди было все нормально, но: пошли жалобы что приходится "прагать" из окна к окну; хочется сделать все "красиво" smile Вот вариант с разворачивающимися столбцами был бы в самый раз...


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
Sansa
Дата 6.10.2008, 10:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 173
Регистрация: 18.10.2006
Где: Королев

Репутация: 3
Всего: 6



Может эти дополнительные расходы в виде детей дерева реализовать?
--------------------
- Здравствуйте, я Ваш патологоанатом
PM MAIL ICQ   Вверх
Poseidon
Дата 6.10.2008, 12:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



Sansa, как ты это видешь? VT сделан в виде таблицы. Ветви дерева (точнее их отображение)  вообще отключены. Каждая новая запись - это RootNode. Т.е. новая строчка в таблице - это уже новая запись. А "разделять" нужно только один "столбец". Тем более что разделить нам нужно один столбец на много (т.е. было только "Накладные", а станет "З/плата, налоги, НДС и т.д.). 

Или я чего-то недопонял. Если возможнсть паказать?

Это сообщение отредактировал(а) Poseidon - 6.10.2008, 13:18


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
Sansa
Дата 6.10.2008, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 173
Регистрация: 18.10.2006
Где: Королев

Репутация: 3
Всего: 6



Да нет, ты правильно понял... 
Просто я думал, каждому руту, при Checked определенного пункта меню (или кнопки на панели), добавлять одного чилда, в котором и выводится недостающие данные

Добавлено через 1 минуту и 45 секунд
Ну, или как вариант, (опять же по какому то условию) сделать строку высотой в 2 строки текста, и в нужную колонку тупо слепливать с помощью format нужные нанные

Добавлено через 3 минуты и 36 секунд
В любом другом случае, тебе надо Virtual дерево, и самому отрисовывать заголовки (как при сортировке)
--------------------
- Здравствуйте, я Ваш патологоанатом
PM MAIL ICQ   Вверх
Poseidon
Дата 6.10.2008, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



Цитата(Sansa @  6.10.2008,  12:46 Найти цитируемый пост)
Просто я думал, каждому руту, при Checked определенного пункта меню (или кнопки на панели), добавлять одного чилда, в котором и выводится недостающие данные
Дело в том, что "недостающие" данные есть только по одному столбцу. Все остальное неизменно.

Короче, нужно примерно такое:

Что бы было и так:
                                                                                                           
| Дата  | Материалы | Зарплата | Накладные расходы  [+] |  Всего | 
|           |                    |                  |                                        |             |
|Сен.08|           1 000|            200|                                 700|    1 900|
|Окт.08|           9 000|         3 500|                            12 000|  24 500|
|Ноя.08|           3 280|         1 250|                              5 000|    9 530|
|Итого |          13 280|         4 950|                            17 700|  35 930|


и так:

                                                                                                           
| Дата  | Материалы | Зарплата | Накладные расходы [-]  |  Всего   | 
|           |                    |                  |З/плата         |     Налоги |             |
|Сен.08|           1 000|            200|               400|            300|    1 900|
|Окт.08|           9 000|         3 500|            7 000|         5 000|  24 500|
|Ноя.08|           3 280|         1 250|             3000|         2 000|    9 530|
|Итого |          13 280|         4 950|          10 400|         7 300|  35 930|


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
Sansa
Дата 6.10.2008, 13:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 173
Регистрация: 18.10.2006
Где: Королев

Репутация: 3
Всего: 6



Ясно, это я неправильно понял... 

эммм... Может hint?
--------------------
- Здравствуйте, я Ваш патологоанатом
PM MAIL ICQ   Вверх
Bose
Дата 6.10.2008, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1458
Регистрация: 5.3.2005
Где: Riga, Latvia

Репутация: 23
Всего: 51



Цитата(Poseidon @  6.10.2008,  09:56 Найти цитируемый пост)
Bose, DevExpress платные... 

А ты и не говорил, что тебе именно бесплатные нужны  smile 

Цитата(Poseidon @  6.10.2008,  09:56 Найти цитируемый пост)
GHFStringTree не плох, но все же нужно сворачивание. Иначе замена компонента не целесообразна (много чего нужно менять, т.к. все уже реализовано на VT, а нужного эффекта все-равно не будет).

GHFStringTree - является прямым наследником от TVirtualStringTree, так что изменений должно быть немного. Я давно с ним не работал, и точно не помню нюансов.
PM MAIL WWW Skype   Вверх
Sansa
Дата 6.10.2008, 15:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 173
Регистрация: 18.10.2006
Где: Королев

Репутация: 3
Всего: 6



Bose, А где страничка этого GHF?
--------------------
- Здравствуйте, я Ваш патологоанатом
PM MAIL ICQ   Вверх
aktuba
Дата 6.10.2008, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: 16
Всего: 38



Цитата(Poseidon @  6.10.2008,  10:56 Найти цитируемый пост)
Других виртуалтривьювщиков на винграде я не знаю

Metalfan хорошо разбирается ;). Я, к своему стыду, еще не смотрел - времени свободного не было. Обещаю сегодня заняться.


--------------------
user posted image
PM MAIL WWW Skype   Вверх
Bose
Дата 6.10.2008, 15:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1458
Регистрация: 5.3.2005
Где: Riga, Latvia

Репутация: 23
Всего: 51



Цитата(Sansa @  6.10.2008,  15:08 Найти цитируемый пост)
Bose, А где страничка этого GHF? 


Понятия не имею. Сам компонент я скачивал на официальной страничке Virtual Treeview
Назывался он то ли Virtual Treeview desc. (nested headers), то ли Virtual Treeview descendant with footer.
Там вообще много интересных наследников можно скачать  smile 
PM MAIL WWW Skype   Вверх
aktuba
Дата 7.10.2008, 01:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: 16
Всего: 38



Так-с... По порядку.

1. Отрисовку до ума не доводил.
2. Лучше использовать VirtualDrawTree, хотя я использовал VirtualStringTree.
3. Время 2.10 ночи, поэтому код причесывать тоже не стал - кому надо, сам причешет, заодно и разберется что и как ;)
4. Подсказали, что на D2009 вылетает AV - не проверял, спать хоца =)

В остальном, вроде как заказывали. Забирайте.

Присоединённый файл ( Кол-во скачиваний: 97 )
Присоединённый файл  vtHeader.rar 4,48 Kb


--------------------
user posted image
PM MAIL WWW Skype   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1520 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.