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

Сообщение   Найти похожие ветки 

 
Бульбаш ©   (2002-05-28 16:06) [0]

периодически при попытке выполнения кода типа:
procedure TOtgr.BitDobClick(Sender: TObject);
var key: integer;
begin
for key:=0 to ListSelect.Count-1 do
begin
DM.Reestr.Params[0].AsInteger:=DM.TTNUNIK.Value;
DM.Reestr.Params[1].AsInteger:=Integer(ListSelect[key]);
DM.Reestr.ExecSQL;
end;
ListSelect.Free;...
Список заполняется при работе с гридом. При нажатии ОК в окне сообщения идет возврат в грид и далее по кругу. Все начинает работать после процедуры входа-выхода в прогу. Подскажите плиз в чем может быть дело???


 
Johnmen ©   (2002-05-28 16:27) [1]

На какой строке ?
А вообще то для реализации указанного я бы использовал букмарклист...который и так имеется у грида...



 
Бульбаш ©   (2002-05-28 17:31) [2]

Я прорисовывал чекбоксы для множественного выбора (по статье из королевства делфи). Работает все прекрасно. И особой логики в появлении ошибки нет. Может быть выбрано и 10 строк и одна. Не могу понять что конкретно означает это сообщение и как с ним бороться..


 
Johnmen ©   (2002-05-28 17:38) [3]

Означает попытку обатиться к элементу списка, номер которого выходит за границы всех номеров (напр.менее 0 или более самого большого...)


 
NailS ©   (2002-05-28 18:13) [4]

Складывается впечатление, что DM.Reestr.Params[1] не существует, ИМХО.


 
Сергей Иванов ©   (2002-05-29 09:15) [5]

Может быть дело в ListSelect.Free; ?
Не заметил, при первом вызове процедуры это происходит или при последующих?
Попробуй использовать ListSelect.Items[i].Clear (смотря что у тебя за ListSelect)


 
Lord Warlock ©   (2002-05-29 09:24) [6]

Где создается этот лист, и зачем уничтожается?


 
NailS ©   (2002-05-29 12:00) [7]

Если бы проблема была в ListSelect.Free получили бы Access Violation а не List index out of bounds


 
Бульбаш ©   (2002-05-29 15:20) [8]

ListSelect:=TList.Create; в FormActivate и
ListSelect.Free при закрытии формы и отработки вышеуказанного кода (с посл.закрытием формы). Появляется эта беда редко (сегодня 1 раз), но факт налицо. Хотелось бы убрать эту кривость


 
NailS ©   (2002-05-29 15:42) [9]

Дык, посмотри хотя бы в какой точке эта ошибка выскакивает, а потом будет видно как лечить. Дельфи же в точке ошибки останавливается.


 
Donal_Graeme   (2002-05-29 16:20) [10]


> Бульбаш © (28.05.02 16:06)
> периодически при попытке выполнения кода типа:


так кода типа пирведённого или именно приведённого кода? если типа, то надо бы точный код, а если приведённого, то я бы сказал, что прав NailS © (28.05.02 18:13)


 
Бульбаш ©   (2002-05-29 16:55) [11]

Вся проблема в том что из под делфы у меня ни разу это сообщение не выдавалось, а юзвери работают с откомпилированными exe-шниками и следовательно таким образом отловить невозможно. А код именно такой...


 
NailS ©   (2002-05-29 17:47) [12]

Вставь проверку типа
if DM.Reestr.Params.Count > 1 then DM.Reestr.Params[1].AsString



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

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



Память: 0.47 MB
Время: 0.041 c
4-77688
Y_Vovan
2002-04-26 15:56
2002.06.24
Как програмно создать юзера с паролем в Win98,Nt,W2K,Xp


3-77321
Dmitr
2002-05-31 07:48
2002.06.24
ADO, D6, SQL


14-77585
cok
2002-05-21 18:03
2002.06.24
Пушкин - это кто?....


1-77463
Artem Bakulin
2002-06-11 20:29
2002.06.24
Изменение свойств нескольких объектов


4-77679
Up
2002-04-20 00:06
2002.06.24
Регистрация ActiveX компоненты и dll




   Наверх