Главная страница
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.029 c
3-1180935795
ambhtr
2007-06-04 09:43
2007.10.14
Удаление дубликатов из таблиц


2-1189858384
delphiForever
2007-09-15 16:13
2007.10.14
дата&amp;время>секунды


2-1190014526
~ShamaN~
2007-09-17 11:35
2007.10.14
Странности с модальной формой


2-1190115937
F@T@L_Err0r
2007-09-18 15:45
2007.10.14
MediaPlayer


6-1171694995
Snakecatcher
2007-02-17 09:49
2007.10.14
idUDP