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

Вниз

В чем ошибка в следующем коде?   Найти похожие ветки 

 
Андрей2   (2004-09-07 12:03) [0]

For i:= CheckListBox1.Count-1  Downto 0 do
    if CheckListBox1.Checked[i] then begin
ValueListEditor1.Strings.Add(CheckListBox1.Items[1]+"=0");
CheckListBox1.Items.Delete(i);
    end;

Ошибку выдает на ValueListEditor
Спасибо


 
Плохиш ©   (2004-09-07 12:08) [1]

Чё гадать, прикажете?


 
Jeer ©   (2004-09-07 12:13) [2]

Так может i забыто ?
ValueListEditor1.Strings.Add(CheckListBox1.Items[i]+"=0");


 
Андрей2   (2004-09-07 12:21) [3]

ставил i - то же самое.
Я уже прямо указал куда строку тыкать [1], а ошибку все равно кидает


 
begin...end ©   (2004-09-07 12:24) [4]


> [3] Андрей2   (07.09.04 12:21)


Если нужно именно через Strings (можно ведь и через Cells), то, ИМХО, можно вначале заполнить TStringList какой-нибудь, а потом Strings.Assign().


 
Плохиш ©   (2004-09-07 12:25) [5]


> Андрей2   (07.09.04 12:21) [3]

Текст ошибки является совершенно секретной информацией? Что ж будем гадать:
1. ValueListEditor1 - несуществует
2. Попытка вставить одинаковые значения


 
Плохиш ©   (2004-09-07 12:27) [6]

3. Значение границ цикла расчитывается один раз перед началом выполнения.


 
Андрей2   (2004-09-07 12:47) [7]

> Плохиш
1) alueListEditor1 - существует
2) исключено
3) не совсем понял
Ошибка такая:
Project w.exe raised exception class EAccessViolation with message "Access violation at address 0044699D0 in module w.exe". Read of address FFFFFFFF.
Process stopped.  Use Step or Run to continue


 
Плохиш ©   (2004-09-07 12:51) [8]


> Андрей2   (07.09.04 12:47) [7]

Вот и разобрались, какой-то используемый объект не создан или уже удалён.


 
Андрей2   (2004-09-07 13:22) [9]

но какой? Что-то не могу понять как определить. Все компоненты и объекты, используемые в цикле существуют


 
Плохиш ©   (2004-09-07 13:29) [10]

Используй F7/F8 и Alt+F5/Ctrl+F5


 
Андрей2   (2004-09-07 13:52) [11]

не получается и все тут!
Создал вообще новый проект, поставил на форму CheckListBox, ValueListEditir и Button. Написал код:

procedure TForm1.Button1Click(Sender: TObject);
begin
  For i:= CheckListBox1.Count-1  Downto 0 do
   if CheckListBox1.Checked[i] then begin
       ValueListEditor1.Strings.Add(CheckListBox1.Items[i]+"=0");
        CheckListBox1.Items.Delete(i);
   end;
end;

И все равно кидает ошибку. Пробывал через Cell кидать - то же самое. Может есть какая-то альтернатива?


 
Плохиш ©   (2004-09-07 14:23) [12]

Замени
ValueListEditor1.Strings.Add(CheckListBox1.Items[i]+"=0");
на
ValueListEditor1.Values[CheckListBox1.Items[i]] := "0";


 
Андрей2   (2004-09-07 14:28) [13]

Супер!!!!
Спасибо, Плохиш. Не тот ник себе выбрал :-)


 
MANGOL   (2004-09-07 14:29) [14]

не знаю, че такое ValueListEditor, поэтому вместо него поставил memo :) Получилось вот так:

For i:= CheckListBox1.Items.Count-1  Downto 0 do
 if CheckListBox1.Checked[i] then begin
   Memo1.Lines.Add(CheckListBox1.Items[i]+"=0");
   CheckListBox1.Items.Delete(i);
 end;


всё чюдесно работает!


 
КаПиБаРа ©   (2004-09-07 14:39) [15]

Андрей2   (07.09.04 13:52) [11]
не получается и все тут!


Что клавишы F7/F8 заклинило?


=================================
Чаще пользуйся ушами, чем языком.
=================================


 
Андрей2   (2004-09-07 14:45) [16]

> Плохиш
Может, подскажешь, как отсортировать список в ValueListEditor?
Что-то типа ValueListEditor1.sorted:=true - к сожалению нет.


 
Плохиш ©   (2004-09-07 14:51) [17]

TStringList(ValueListEditor1.Strings).Sort;



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

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

Наверх




Память: 0.5 MB
Время: 0.057 c
6-1089805731
RagE
2004-07-14 15:48
2004.09.19
Передача типа рекорд с помощью TCLientSocket/TServerSocket


14-1094039295
Гость
2004-09-01 15:48
2004.09.19
как известно сокеты склеивают сообщения если выполнить


14-1093714875
able
2004-08-28 21:41
2004.09.19
Охото узнать Ваше мнение.


6-1089773136
RaPToR_1
2004-07-14 06:45
2004.09.19
ошибки в Tclientsocket


14-1093870819
Кирилл
2004-08-30 17:00
2004.09.19
Опрос