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

Вниз

ListView неправильно позицинирует первую строку   Найти похожие ветки 

 
GreyWolf   (2009-10-22 17:05) [0]

Имеется ListView в режиме OwnerData, но не OwnerDraw. Когда я удаляю все строки (устанавливаю ListView.Items.Count = 0) и после этого вновь что-то добавляю, то _иногда_ первая строка появляется не в самом верху, как она должна быть, а с отступом например в 3-20 позиций сверху. В остальном ListView функционирует нормально. После того, как ListView вошел в это состояние, эти пустые строки сверху остаются при повторном удалении всех строк и добавлении новых. Items.Count показывает ожидаемое значение. В чем может быть причина такого поведения?


 
Сергей М. ©   (2009-10-22 17:25) [1]


> после этого вновь что-то добавляю


> и добавлении новых


Какое может быть добавление и удаление в режиме OwnerData ?

В этом режиме изменяя св-во Count на любое значение > 0 ты должен быть готов к соответствующему и правильному состоянию виртуального списка, к которому ты будешь обращаться в обработчиках OnData, OnDataXXXX.

Значит либо список не готов к изменению Count либо неверно обрабатываешь вышеупомянутые события


 
GreyWolf   (2009-10-22 19:30) [2]

Добавление и удаление - имел ввиду установку Items.Count с последующей отрисовкой нового состояния.
Есть обработчик OnData, он отрабатывает как ожидается. То же с OnCustomDrawItem. Эти обработчики не изменяют параметры Canvas (DC) у ListView, которые могли бы сместить строки.

> Значит либо список не готов к изменению Count
А что значит список не готов?


 
Сергей М. ©   (2009-10-22 20:15) [3]

Покажи как у тебя организован список, откуда обработчик OnData берет данные ..


 
GreyWolf   (2009-10-23 02:15) [4]

Проблема исчезла после того, как перестал вызывать ClearSelection метод в случае, если удалены все пункты.



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

Форум: "Основная";
Текущий архив: 2011.06.05;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.003 c
2-1298670826
TStas
2011-02-26 00:53
2011.06.05
Как у Дельфей переставить папку по умолчанию?


15-1298150996
Юрий
2011-02-20 00:29
2011.06.05
С днем рождения ! 20 февраля 2011 воскресенье


10-1156496750
фыва
2006-08-25 13:05
2011.06.05
OleContainer и ScrollBar


15-1297775899
И. Павел
2011-02-15 16:18
2011.06.05
Variable state might not have been initialized


2-1298464739
Артём
2011-02-23 15:38
2011.06.05
Ограничить поле вывода





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский