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

Вниз

StringGrid.Rows   Найти похожие ветки 

 
Separator ©   (2007-10-09 12:18) [0]

Какой вариант правильный:


   Result:= StringGrid.Rows[0].Strings[0]


или


   S: TStrings;

   S:= StringGrid.Rows[0];
   Result:= S.Strings[0];
   S.Free


 
clickmaker ©   (2007-10-09 12:32) [1]

с какой радости во втором S.Free?


 
ЮЮ ©   (2007-10-09 12:36) [2]

StringGrid.Rows[0].Strings[0] === StringGrid.Cells[0, 0]

При чем здесь Subj? Да и в чем вопрос, собственно?


 
Separator   (2007-10-09 12:36) [3]

При вызове функции StringGrid.Rows создается ли новый экземпляр класса TStrings со значениями или дается ссылка на уже существующий экземпляр?


 
Separator   (2007-10-09 12:41) [4]


> StringGrid.Rows[0].Strings[0] === StringGrid.Cells[0, 0]

Это я знаю, так для примера привел. В данном случае, при вызове функции Rows, нужно ли после использования очищать S, или можно просто 1 вариант использовать?


 
ЮЮ ©   (2007-10-09 12:46) [5]

А что исходники уже закрыты? В D7 правильный вариант совсем другой:

function TStringGrid.GetRows(Index: Integer): TStrings;
begin
 Result := EnsureColRow(Index, False);
end;

function  TStringGrid.EnsureColRow(Index: Integer; IsCol: Boolean):
 TStringGridStrings;
var
 RCIndex: Integer;
 PList: ^TSparseList;
begin
 if IsCol then PList := @FCols else PList := @FRows;
 Result := TStringGridStrings(PList^[Index]);
 if Result = nil then
 begin
   if IsCol then RCIndex := -Index - 1 else RCIndex := Index + 1;
   Result := TStringGridStrings.Create(Self, RCIndex);
   PList^[Index] := Result;
 end;
end;


ЗЫ. Очищать ничего не нужно.  И даже вредно.


 
Separator   (2007-10-09 12:51) [6]

Спасибо, это и хотел узнать


 
Leonid Troyanovsky ©   (2007-10-09 12:57) [7]


> Separator   (09.10.07 12:51) [6]

> Спасибо, это и хотел узнать

Проще всего придерживаться правила  им. Т.Бульбы:
кто породил объект - тот его и убивает.

--
Regards, LVT.



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

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

Наверх




Память: 0.48 MB
Время: 0.024 c
6-1172650257
Oleg_teacher
2007-02-28 11:10
2007.10.28
Помогите начинаещему с сокетами


11-1174745393
SergeR
2007-03-24 17:09
2007.10.28
USE_NAMES и KOLActionList ошибка


15-1190783124
nikolay-gavrilov
2007-09-26 09:05
2007.10.28
TWSocket - SSL Effort


15-1190620175
Галинка
2007-09-24 11:49
2007.10.28
Редактировать под Windows, компилировать под Линуксом


6-1172476821
Empleado
2007-02-26 11:00
2007.10.28
Общий вопрос по структуре программы