Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.09.26;
Скачать: [xml.tar.bz2];

Вниз

ListView и БД   Найти похожие ветки 

 
Demn   (2004-08-24 03:38) [0]

Здрасьте.
Подскажите люди добрые. Кто-нибудь делал вывод содержимого локальной БД в ListView и может ли поделиться примерчиком? Или может существует зверь типа "DBListView"?


 
vovchik   (2004-08-24 04:40) [1]

Есть такая хрень как DBListBox и DBLookupListBox на палитре DataControls. я думаю что это то что тебе надо. Подключаешь и работаешь.


 
Demn   (2004-08-24 05:16) [2]

Все куда более запущено. ListBox"ы меня не устраивают. Мне нужен полноценный ListView.
Видимо придется изобретать велосипед... :(


 
Goffman ©   (2004-08-24 05:43) [3]

А зачем тебе именно ListView, чем не устраивает DBGrid?


 
Demn ©   (2004-08-24 06:47) [4]

Мне нужны возможности вывода записей в виде просто значков, больших значков, в виде таблицы(значки + описание) и т.д. Ессно DBGrid этого не позволит.
Тут именно интерфейсная заморочка.
В принципе можно взять обычный ListView и сделать его Virtual со всеми втекающими и вытекающими. :) Но это муторно. И кажется именно этим и придется заниматься...


 
Goffman ©   (2004-08-24 06:56) [5]

Я думаю так
Выбираешь записи из таблицы, пердположим person
select id, name
from person


Нужно чтобы, для каждого элемента у тебя было отбражаемое имя и ID в базе
Проходишь в цикле по результату запроса и заполняешь ListView
ListView.AddItem(Field("name"),pointer(integer(Field("id"))));


 
Demn ©   (2004-08-24 07:08) [6]

Как заполнять этот лист вообще не вопрос. У меня уже есть пара задумок. Меня больше интересовал опыт создания сего чуда.
А именно вопрос оптимизации отрисовки большого числа Item"ов.
Ладно буду разбираться по ходу. Спасибо за интерес. ;)


 
roottim ©   (2004-08-24 09:16) [7]

Много и не надо, сгруппируй все по темам,
в каждой ветке темы по пустышке(1 item), как понадрбится века, проверяеш на пустышку, если да - загружаешь ветвь этого уровня (следующие уровни опять с пустышкой) и тд.
в результате полного дерева не требуется... все данные по мере надобности  + виртуальные методы, о которых ты упомянул.

Есть не только велосипед, а даже мопед www.DevExpress.com
компонент который тебе нужен там есть, но лично я не сторонник
использования не Free компонентов, лучше уж руками.


 
NAlexey ©   (2004-08-24 10:01) [8]

>roottim ©   (24.08.04 09:16) [7]
А зачем ветвь? Автор же спрашивает о ListView  а не о TreeView.

>Demn ©
Может что конкретно интересует, а не общие вопросы. И что значит:
>А именно вопрос оптимизации отрисовки большого числа Item"ов.

Ты же не отрисовываешь сразу все элементы. Только видимые.


 
Demn ©   (2004-08-25 11:18) [9]

>NAlexey
Дело в том, что даже видимых элементов предполагается не мало, примерно 10-50(в зависимости от ViewStyle). Если взять за образец Virtual ListView из Demos, то можно заметить тормоза при перерисовке. Хочется енто дело обойти. Есть мысль кэшировать видимые элементы, но пока еще руки не дошли до этого.


 
roottim ©   (2004-08-25 15:41) [10]

2NAlexey ©   (24.08.04 10:01) [8]
 мдя, DevExpress предлагает TreeList, DBTreeList
 вот енто и смутило :)



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.09.26;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.034 c
1-1094940593
denis_v_ne
2004-09-12 02:09
2004.09.26
Как написать в Delphi сложные математические выражения?


3-1093580693
Janbolat
2004-08-27 08:24
2004.09.26
При попытке вычислить поля выходит ошибка про инвалидов!


1-1094665692
CBOLOCH
2004-09-08 21:48
2004.09.26
виснет Delphi 7


8-1088739507
jb
2004-07-02 07:38
2004.09.26
Площадь полигона


3-1093407981
Desperado
2004-08-25 08:26
2004.09.26
TIBTransaction и MIDAS





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский