Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.10.14;
Скачать: CL | DM;

Вниз

Обновить список в ListBox   Найти похожие ветки 

 
SKIPtr   (2007-09-16 09:58) [0]

У меня текст постоянно обнавляется При обновлении текст в окне  начинается с начала а надо чтоб устанавился на ту позицию которая была  до обнавления


 
{RASkov} ©   (2007-09-16 11:11) [1]

> [0] SKIPtr   (16.09.07 09:58)

Сам-то понял вопрос свой? Давай на языке Делфи поговорим, ну его - этот русский...)
1 ListBox.ItemIndex:=ListBox.Items.Add(<stroka>);
2 ListBox.Items.Insert(0, <stroka>);


 
SKIPtr   (2007-09-16 12:38) [2]

Когда просматриваю большой список перемещая линейку прокрутки При обновлении список начинается с начала и приходится перемещать прокрутку на ту позицию а надо чтоб осталось на той позиции где было до обновления


 
{RASkov} ©   (2007-09-16 12:44) [3]

> [2] SKIPtr   (16.09.07 12:38)

Извини... но я опять нифика не понял... :( но уже вроде ясно, что не [1]
Может код покажешь с комментариями....


 
SKIPtr   (2007-09-16 15:40) [4]

Procedure Timer;
begin
  ...
  ListBox.Clear;
  while .... do ListBox.Items.Add(...);
  ...
end;

Конкретно список открытых окон При просмотре всего списка при переписывании список переносится в начало что очень сильно мешает Я думаю не самое  хорошее увеличить Interval


 
Kolan ©   (2007-09-16 15:50) [5]

> [4] SKIPtr   (16.09.07 15:40)
> Procedure Timer;
> begin
>  &#133
>  ListBox.Clear;
>  while &#133 do ListBox.Items.Add(&#133);
>  &#133
> end;
>
> Конкретно список открытых окон При просмотре всего списка
> при переписывании список переносится в начало что очень
> сильно мешает Я думаю не самое  хорошее увеличить Interval


Если я правильно понял, то до стирания нада запомнить ItemIndex, а после стирания и вставки вернуть ему прежнее значение:
 MyItemIndex := ListBox.ItemIndex;
 ListBox.Clear;
 while &#133 do ListBox.Items.Add(&#133);
 ListBox.ItemIndex := MyItemIndex;


 
{RASkov} ©   (2007-09-16 16:05) [6]

> [4] SKIPtr   (16.09.07 15:40)

Ну наверное [5] + добавлю только Items (BeginUpdate и EndUpdate)

PS: А если перед очисткой индекс был больше, чем после вставки, общего кол-во строк?


 
SKIPtr   (2007-09-16 16:49) [7]

ItemIndex показывает выбраную строку а я не чего не выбирал я только просматриваю список а он после перечитывания уходит в начало


 
{RASkov} ©   (2007-09-16 17:53) [8]

> [7] SKIPtr   (16.09.07 16:49)

Вместо ItemIndex используй TopIndex...


 
SKIPtr   (2007-09-16 22:16) [9]

Спасибо вот это тот результат что надо Подскажите то как я написал это самый лучший способ для этого или есть другой


 
YurikGL ©   (2007-09-16 22:21) [10]

Опиши более подробно что за задача... Как происходит обновление... Данные только добавляются? Какая предметная область?
Смутное подозрение, что решать задачу надо совершенно по другому.


 
{RASkov} ©   (2007-09-16 22:22) [11]

> то как я написал это самый лучший способ для этого или есть другой

Не сомневайся в этом :)
Но как ты там, что и зачем написал - никому не известно.... так, что... считай, что это "самый лучший")


 
SKIPtr   (2007-09-17 17:38) [12]

Программа выводит список окон на раб столе с информацией о них В любой момент число окон может менятся как и информация о них Это все должно отобразится в списке Как я показал таймером список очищается и создается вновь Является такой способ лучшем или можно не очищать а просто менять содержимое строк



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

Текущий архив: 2007.10.14;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.025 c
15-1190028979
Nucer
2007-09-17 15:36
2007.10.14
Построение RAID-0 массива


15-1190081676
Slider007
2007-09-18 06:14
2007.10.14
С днем рождения ! 18 сентября 2007 вторник


2-1190569290
Bast
2007-09-23 21:41
2007.10.14
Копировать


15-1190105915
Сергей М.
2007-09-18 12:58
2007.10.14
про Линух ..


2-1188218496
Riply
2007-08-27 16:41
2007.10.14
Объявление "лишних" переменных в процедуре.