Вниз
Скачать: CL | DM;

TListView and "Array index out of bounds"   Найти похожие ветки 

← →
Магнум   (2005-06-16 10:15) [0]

Может быть проблема (ошибка "Array index out of bounds") из-за того, что во время его заполнения TListView программно отключается? (чтобы не реагировать на нажатия)

ListView1.Enabled := False;
ListView1.Items.BeginUpdate;
try
  ListView1.Items.Clear;

... ля-ля-ля, тополя ...
finally
  ListView1.Items.EndUpdate;
  ListView1.Enabled := True;
end;


← →
Anatoly Podgoretsky ©   (2005-06-16 10:17) [1]

Конечно может, в ля-ля-ля, тополя ...


← →
Магнум   (2005-06-16 10:19) [2]

Там идет простое заполнение ЛистВью. Удивляет сама ошибка "Array index out of bounds" (обычно указывается индекс, а здесь нет)


← →
Stanislav ©   (2005-06-16 10:19) [3]

Ты пытаешься обратится к индексу которого не существует и скорее всего там - Anatoly Podgoretsky ©   (16.06.05 10:17) [1]


← →
Anatoly Podgoretsky ©   (2005-06-16 10:20) [4]

Магнум   (16.06.05 10:19) [2]
Не удивляйся у тебя ошибка в программе.


← →
Магнум   (2005-06-16 10:24) [5]

Почему если я уберу

ListView1.Enabled := False;

то ошибки нет?


← →
Anatoly Podgoretsky ©   (2005-06-16 10:32) [6]

Ну таже причина - ошибка в программе.


← →
Digitman ©   (2005-06-16 10:34) [7]


> Почему если я уберу


а зачем тебе вообще нужно запрещать польз.ввод  в контрол ?

если у тебя в "ля-ля-ля, тополя" нет обработки вин-сообщений, то юзер получит доступ к котролу лишь после твоего "ля-ля-ля, тополя"


← →
Магнум   (2005-06-16 11:16) [8]

Там есть обработка вин-сообщений. Как же лучше сделать запрет нажатия на ЛистВью?


← →
Digitman ©   (2005-06-16 11:19) [9]


> Там есть обработка вин-сообщений


зачем она там нужна ? объясни ...


← →
Магнум   (2005-06-16 11:26) [10]

Параллельно запущен поток TThread, который выполняет полезную работу.


← →
ЮЮ ©   (2005-06-16 11:30) [11]

>Параллельно запущен поток TThread, который выполняет полезную работу.
Например, в цикле по ListView1.Items потоконебезопасно лазает :)


← →
Digitman ©   (2005-06-16 11:42) [12]


> Магнум   (16.06.05 11:26) [10]
> Параллельно запущен поток TThread, который выполняет полезную
> работу.


ну и пусть себе выполняет !
зачем win-сообщения-то обрабатываешь в "ля-ля-ля, тополя" ?
и как обрабатываешь ?
или твой доп.тред шлет основному какие-то сообщения, которые как-то влияют на состояние визуализируемого в дан.момент списка ?


← →
Anatoly Podgoretsky ©   (2005-06-16 12:14) [13]

Если так то проблема синхронизации. И все из-за ля-ля-ля


← →
evvcom ©   (2005-06-16 12:16) [14]

код твоего "ля-ля-ля, тополя..." плиз


← →
Anatoly Podgoretsky ©   (2005-06-16 12:29) [15]

evvcom ©   (16.06.05 12:16) [14]
Не только, по ходу кроме тополей появились и дубы. А это уже посерьезней.


← →
Магнум   (2005-06-16 13:36) [16]

А вообще, как можно сделать запрет нажатия на ЛистВью? Что-то вроде CanSelect...


← →
Amoeba ©   (2005-06-16 13:44) [17]

Если хочешь предметного разговора, а не гадания на кофейной гуще, то - "код в студию".


← →
Digitman ©   (2005-06-16 13:46) [18]

"У попа была собака .."

)

ListView1.Enabled := False;



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

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.029 c
1-1118640305
Juster
2005-06-13 09:25
2005.07.11
Пропись пути для модулей


3-1117627480
Aljona
2005-06-01 16:04
2005.07.11
Ttable иedit


1-1119591049
Earth
2005-06-24 09:30
2005.07.11
Win


14-1118726840
Тульский
2005-06-14 09:27
2005.07.11
Майкл Джексон


11-1101890410
<Falcon>
2004-12-01 11:40
2005.07.11
Битые ссылки?




   Наверх