Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

DBGrid > TreeView > DBGrid [D7, D2005]


Страницы:   1 2

SiDimka ©   (2012-04-17 21:01:00) 

Пдскажите плиз как переоткыть правильно TreeView.
TreeView > DBGrid работает без проблем, а вот DBGrid > TreeView при меремещении по записям дорисовывает уже созданые ветки, делаю клер TreeView item, перестает отрисовывать ветки.


SiDimka   (2012-04-19 19:06:00) [1]

>Тебе это "одноразово" надо

Да одноразово, в одном окне определенного проекта. Надеюсь в будущем таким извращением не прийдется  заниматься.


sniknik   (2012-04-19 15:51:00) [2]

> Одно это чего стоит:
первый цикл это похоже фетчолл чтобы во втором можно рекордкаунт использовать...
база/компоненты не указаны, как всегда, но вообще -
> Либо врёшь.
может и не врет, просто серверный курсор, с частичной скачанностью записей + рекордкаунт... ну и вместо того чтобы учится правильно писать начал "затычки" лепить/шаманством заниматься.


Ega23   (2012-04-19 15:31:00) [3]


> Да, в данном случае удобней в таблице, чем первой веткой
> в дереве.


Я не уверен, что это будет удобнее. Впрочем - тебе виднее.
Тебе это "одноразово" надо, или ты данную связку как компонент собираешься использовать?


SiDimka   (2012-04-19 02:08:00) [4]

Да, в данном случае удобней в таблице, чем первой веткой в дереве.


Ega23   (2012-04-19 02:00:00) [5]

Ты уверен, что тебе нужна первая таблица?


SiDimka   (2012-04-19 01:39:00) [6]

В окне отображается 1я таблица с наименованием, дальше в дереве отображаются группы с подгруппами, затем во 2й таблице отображается содержимое подгрупп.


Ega23   (2012-04-19 01:19:00) [7]


> Отображение 2-х веток, т.е верхней и одного чида, без добавлений,
>  изменений, удалений.


Если ты думаешь, что это понятно, то ты ошибаешься.
Успокойся, забудь про Delphi, возьми бумажку и карандаш. И опиши задачу. Без своих соображений о том, как её надо решать. И представь, что ты эту задачу не программисту объясняешь, а, например, продавцу в магазине. Который вообще не понимает, что такое DBGrid, TreeView и DataSet.


SiDimka   (2012-04-19 01:05:00) [8]

Отображение 2-х веток, т.е верхней и одного чида, без добавлений, изменений, удалений.


Ega23   (2012-04-19 00:38:00) [9]


> где екзампл взять под TreeView чтобы сделать его нормальным
> DB под мою задчу. Т.е как связать его с TDataSet, TDataSource.


Опиши задачу.

Но в целом, как мне кажется, если редактирования со стороны не будет, то тебе надо на события TDataSource приязаться.


Jeer   (2012-04-18 23:53:00) [10]

На torry не пробовал поискать ?
Там много чего бывает.


SiDimka   (2012-04-18 22:15:00) [11]

Народ, может кто подскажет где найти DBTreeView фриварный, или где екзампл взять под TreeView чтобы сделать его нормальным DB под мою задчу. Т.е как связать его с TDataSet, TDataSource.


Jeer   (2012-04-18 21:58:00) [12]


> нормальная работа с таким деревом будет нереальна.


Она реальна для ограниченного круга задач, в частности для front-end приложений, когда справочники статичны.


Ega23   (2012-04-18 21:55:00) [13]


> И мне очень интересно ПОЧЕМУ??!!


Потому что очень много ограничений. Универсальный компонент так не делают.


Ega23   (2012-04-18 21:53:00) [14]


> Я не думаю, а также, как и ты - делаю.


Когда-то очень давно, возникла надобность такого компонента, ибо задолбались каждый раз писать "аналог" под каждую выборку, а в той задаче иерархических выборок было немало. Поскольку сам клиент на DBAware был построен, начальство сказало: "Надо!". Я пошурстил по тырнету, нашёл DevExpress. Начальство сказало: "Дорого, пиши сам", за что я ему до сих пор премного благодарен, ибо где-то с месяц разбирался в тонкостях работы связки TDataSet -> TDataSource -> TDataLink -> DBControl.
И в этой идеологии создать универсальныйTDBTreeView действительно очень сложно. Даже я бы сказал невозможно. Пока не введут событие DataSet-а , которое сигнализирует о том, что он был изменён, и пока его не будут выплёвывать на TDataSet.EnableControls - нормальная работа с таким деревом будет нереальна.


SiDimka   (2012-04-18 21:49:00) [15]

> Как вы думаете, почему нет такого замечательного компонента, как TDBTreeView?

И мне очень интересно ПОЧЕМУ??!!
Вот выкачал ExpressDBTree 30-day trial посмотрел, и головняк решился бы одним махом. Все чего душа желала за 10 минут реализовывается:)), да вот незадача из-за одного компонента 1,5т капусты отгрузить:(


Jeer   (2012-04-18 21:45:00) [16]


> Как вы думаете,


Я не думаю, а также, как и ты - делаю.


Ega23   (2012-04-18 21:22:00) [17]


> Построение под-дерева только на клиенте и его средствами
> всегда затратно.


Зависит от ситуации.
Как вы думаете, почему в стандартнойпоставке Delphi нет такого замечательного компонента, как TDBTreeView? Хотя казалось бы, чё там... Да и использование его не такая уж и редкость.


Jeer   (2012-04-18 20:59:00) [18]


> только как правильно ее реализовать


Построение под-дерева только на клиенте и его средствами всегда затратно.
Да и надо ли ?


SiDimka   (2012-04-18 20:15:00) [19]

>серьёзное недопонимание идеологии работы DBAware-компонентов

Учусь по книжкам самостоятельно, пэтому с некоторой терминологией проблемы.

>Тебе, как я понимаю, нужна мастер-детальная связка

Совешенно верно, только как правильно ее реализовать под данную задачу незнаю.


Ega23   (2012-04-18 19:59:00) [20]


> Я так понимаю, что одной процедурой мне не обойтись.


Совершенно необязательно.
Начнём с того, что у тебя серьёзное недопонимание идеологии работы DBAware-компонентов.
Ты не двигаешься по DBGrid. Двигается курсор по набору данных, с которым связан твой DBGrid через DataSource.
Тебе, как я понимаю, нужна мастер-детальная связка.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо