Вниз
Скачать: 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 вся ветка

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



Память: 0.46 MB
Время: 0.021 c
1-1081378880
Romula
2004-04-08 03:01
2004.04.25
TPageControl


7-1077776175
Ozone
2004-02-26 09:16
2004.04.25
Информация о системе


14-1080795041
han_malign
2004-04-01 08:50
2004.04.25
Да, жестокие у народа шутки


3-1080224345
Крутыш
2004-03-25 17:19
2004.04.25
Всё о SyBase.


1-1081234007
viktor
2004-04-06 10:46
2004.04.25
3.5A




   Наверх