Форум: "Основная";
Текущий архив: 2002.10.24;
Скачать: [xml.tar.bz2];
ВнизВнимание! Exception. Найти похожие ветки
← →
AL2002 (2002-10-11 01:01) [0]Переменная List1 типа TStrings выдаёт Exception, когда я ей делаю List1.Clear.
С чего бы это?
← →
Suntechnic (2002-10-11 01:21) [1]Ну например переменная List1 ссылается на несуществующий объект типа TStrings. Достаточно весомая причина? А для того чтобы получить нормальный ответ надо хотя бы написать что за Exception. Они ж ведь тоже разные бывают...
← →
AL2002 (2002-10-11 01:25) [2]>Suntechnic © (11.10.02 01:21)
То был глюк. После перезагрузки уже ничего не исключается.
Подлость, слов нет. Я полчаса бился.
← →
MBo (2002-10-11 06:50) [3]Не забыл, что TStrings - абстрактный тип?
Нужно создавать экземпляры класса TStringList
← →
AL2002 (2002-10-11 11:03) [4]>MBo © (11.10.02 06:50)
Как их создавать?
← →
Mike_Goblin (2002-10-11 11:17) [5]var
MyList:TStrings;
begin
MyList:=TStringList.Create;
end;
← →
qube (2002-10-11 11:18) [6]AL2002 © (11.10.02 11:03)
TStringList.Create :)
← →
Skier (2002-10-11 11:24) [7]А вот так ещё круче :)
var
MyList:TStrings;
begin
MyList:=TStringList.Create;
try
//..............
MyList.Clear;
//..............
finally
FreeAndNil(MyList);
end; //try
end;
← →
AL2002 (2002-10-11 12:09) [8]Exception от этого криейта. И до присвоения значения и после.
Ну их в пень.
← →
MBo (2002-10-11 12:48) [9]>AL2002
Покажи код
← →
AL2002 (2002-10-11 14:34) [10]>MBo © (11.10.02 12:48)
Убил я его.
Но там было так (по памяти):
var
List1,List2:TStrings;
Begin
List1:=ListBox1.Items;
List2:=ListBox2.Items;
If List1<>List2 Then ...
//Пробовал If List1.Text<>List2.Text Then ...
//Пробовал и List1.Create. Где только его не ставил.
Наверное, надо, как Скаер сказал:
MyList:=TStringList.Create;
но было уже позно. Но ничего. Я выжил.
← →
Skier (2002-10-11 14:41) [11]>AL2002
var
List1:TStrings;
List2:TStrings;
begin
List1:=TStringList.Create;
List2:=TStringList.Create;
try
List1.Text:=ListBox1.Items.Text;
List2.Text:=ListBox2.Items.Text;
If List1.Text<>List2.Text Then ...
finally
FreeAndNil(List1);
FreeAndNil(List2);
end; //try
end;
← →
AL2002 (2002-10-11 14:47) [12]>Skier © (11.10.02 14:41)
Козырно.
← →
Skier (2002-10-11 14:51) [13]>AL2002
???
← →
AL2002 (2002-10-11 14:59) [14]>Skier © (11.10.02 14:51)
>>AL2002
>???
Да. Это оно.
Теперь хоть буду знать.
Я просто взял, и ListBoxов.Items.Countы проверил.
Зато поумнел. Спасибки. :))
← →
Darlock (2002-10-11 15:23) [15]
var
List1,List2:TStrings;
Begin
List1 :=ListBox1.Items;
List2 :=ListBox2.Items;
If List1.Text<>List2.Text Then ...
тоже должно было бы работать ИМХО...
← →
Darlock (2002-10-11 15:25) [16]Хотя может и нет, но если подправить
List1,List2 : TStringsList;
то тогда точно заработало бы...
← →
qube (2002-10-11 15:28) [17]Darlock (11.10.02 15:25)
Точно, причем производительность будет выше.
← →
AL2002 (2002-10-14 11:01) [18]>Skier ©
пришлось таки применить. Работает. :))
← →
down (2002-10-14 11:07) [19]а зачем вообще List1,2?
if ListBox1.Items.Text <> ListBox2.Items.Text then...
← →
AL2002 (2002-10-14 11:26) [20]>down (14.10.02 11:07)
Не в листбоксах дело.
← →
down (2002-10-14 11:28) [21]2AL2002
Ну извини, извини...
← →
Zemal (2002-10-14 11:51) [22]Вот-с... многие только узнают о существовании классов, реализованных ещё в 5 версии :). Кстати, кто-нибудь в курсе, что есть ещё куча классов в модуле Classes? Кстати, там полно таких полезностей, которые в основном никто не юзает :). Кто знает о существовании классов потомков от TList? Например TObjectList? А ведь он позволяет хранить в своих Items не ссылки на объекты (как это можно реализовать в TStringList), а сами объекты! :) Например теже TStringList-ы :). К сведению: он умеет удалять все объекты в своём массиве и очищать память при своём удалении!!!
Почему-то самый популярный класс TStringList... в основном другое никто неиспользует :(... Наверное, когда 8 делфя выйдет, все бросятся на изучение классов 6 версии :). Прикольно. Кстати, никто не юзал 7 делфю? Не смотрел какие классы там нагромоздили на TStrings, TList и TStream?
Весь форум просмотрел и создалось впечатление, что кроме TStringList, и за некоторым исключением TFileStream и TThread, в Делфи больше классов нет!!! Не интересны общей массе другие полезности :(... а Борландовцы так старались...
← →
Anatoly Podgoretsky (2002-10-14 12:49) [23]AL2002 © (11.10.02 14:34)
В приведенном тобой коде ошибок нет
← →
AL2002 (2002-10-14 12:55) [24]>Anatoly Podgoretsky © (14.10.02 12:49)
Ошибок-то нет. Там ещё нескольких нужных строк тоже нет.
← →
Anatoly Podgoretsky (2002-10-14 13:06) [25]Так ты их приведи
← →
AL2002 (2002-10-14 13:16) [26]>Anatoly Podgoretsky © (14.10.02 13:06)
Дык, Скайер уже привёл. А я про них и не знал.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.10.24;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.008 c