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

Вниз

TStrings   Найти похожие ветки 

 
killer ©   (2004-04-06 18:22) [0]

procedure TForm1.Button1Click(Sender: TObject);
var
str: TStrings;
itm: TStringList;
begin
itm:=TStringList.Create;
str:=itm;
str.Add("Test_1");
str.Add("Test_2");
str.Add("Test_3");
str.Add("Test_4");
str.Add("Test_5");
str.Add("Test_6");
str.Add("Test_7");
ListBox1.Items:=itm;
itm.Free;
end;

В ListBox.Item прописываются строки "Test_.." Почему? Мы же не передаем ListBox.Items:=itm; Ктонибудь, объясните мне почему так получается...


 
Тимохов ©   (2004-04-06 18:23) [1]

т.к. str и itm это указатели на один и тот же объект.
присвоение str := itm просто копирует указатели


 
Гаврила   (2004-04-06 18:24) [2]

str:=itm;
потому что str и itm указывают на один и тот же экземпляр класса


 
killer ©   (2004-04-06 18:27) [3]

а вот если вместо ListBox-а была бы какаянибудь третья переменная типа TStrings или TStringList... тогда в нее бы это все записывалось?


 
Тимохов ©   (2004-04-06 18:29) [4]


> killer ©   (06.04.04 18:27) [3]

не путайте переменные и свойства.

str - переменная.
listbox.items - свойство. При присовоении ему значения происходит не просто Items := str, а что-то похожее на это items.assign(str), т.к. копирование значения, а не адреса.


 
killer ©   (2004-04-06 18:34) [5]

Тимохов что-то понятно.... значит если мы присвоим какоенибудь свойство какойнибудь переменной... то в объекте тотже ListBox.Item будет как-бы отображать что происходит с этой переменной? Так?


 
Тимохов ©   (2004-04-06 18:37) [6]

может так, а может и нет - честно скажу не понял утвержения.

большой совет прочесть простую книгу по дельфи. займет от силы неделю, опыта даст немеряно.

если бы это было возможно я бы попытался объяснить что-то тут, но это будет целая книга.


 
Гаврила   (2004-04-06 18:37) [7]

все завилит от реализации
в данном случае
str.Add("Test_6");
str.Add("Test_7");
ListBox1.Items:=itm;

если продолжить дальше
str.Add("Test_8");
str.Add("Test_9"); и т.д, то
содержимое ListBox уже меняться не будет



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

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

Наверх




Память: 0.48 MB
Время: 0.036 c
8-1068846700
BlaMyr
2003-11-15 00:51
2004.04.25
Миниатюры графических файлов.


6-1077909579
Russu
2004-02-27 22:19
2004.04.25
SMTP сервер


4-1077345889
Костя
2004-02-21 09:44
2004.04.25
ExitWindowsEx


3-1080222827
Wolferio
2004-03-25 16:53
2004.04.25
Базы данных


3-1080038819
onix
2004-03-23 13:46
2004.04.25
Безопасность БД