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

Вниз

Помогите найти ошибку в классе   Найти похожие ветки 

 
siriusP   (2004-02-10 17:17) [0]

Подскажите, пожалуйста, где моя ошибка - есть фрейм TFrameShiftDay
- в другом юните есть класс, куда я кладу фреймы:

TFrameShift = class(TObject)
public
FFrameShiftDay: TList;
protected
function GetFrame(aIndex: integer): TFrameShiftDay;
function GetFrameCount: integer;
public
constructor Create();
destructor Destroy;override;
function AddFrameShiftDay(aParent: TWinControl; aidType: integer): integer;
procedure DelFrameShiftDay(aIndex: integer);
property FrameShiftDay[aIndex: integer]: TFrameShiftDay read GetFrame;
property FrameShiftDayCount: integer read GetFrameCount;
end;

constructor TFrameShift.Create();
begin
inherited Create;
FFrameShiftDay:= TList.Create();
end;

destructor TFrameShift.Destroy();
var tmpI: integer;
begin
if assigned(FFrameShiftDay) then begin
for tmpI:= 0 to FFrameShiftDay.Count-1 do
TFrameShiftDay(FFrameShiftDay.Items[tmpI]).Destroy;
end;
FFrameShiftDay.Free;
inherited Destroy;
end;

function TFrameShift.GetFrame(aIndex: integer): TFrameShiftDay;
begin
result:= TFrameShiftDay(FFrameShiftDay.Items[aIndex]);
end;

function TFrameShift.GetFrameCount: integer;
begin
result:= FFrameShiftDay.Count;
end;

function TFrameShift.AddFrameShiftDay(aParent: TWinControl; aidType: integer): integer;
var tmpFrameShiftDay: TFrameShiftDay; // все равно падает
begin
tmpFrameShiftDay:= TFrameShiftDay.Create(aParent);
try
result:= TFrameShiftDayValue.Add(tmpFrameShiftDay); // падает :(
//result:= FFrameShiftDay.Add(TFrameShift.Create());// все равно падает :(
FrameShiftDay[FrameShiftDayCount-1].Parent:= aParent;
FrameShiftDay[FrameShiftDayCount-1].FidstlTimeboardType:= aidType;
finally
if assigned(tmpFrameShiftDay) then FreeAndNil(tmpFrameShiftDay);
end;
end;

procedure TFrameShift.DelFrameShiftDay(aIndex: integer);
begin
FFrameShiftDay.Delete(aIndex);
end;

Спасибо.


 
Sandman25   (2004-02-10 17:21) [1]

И в чем ошибка?


 
Миноискатель   (2004-02-10 17:22) [2]

А чего это ты решил, что тут есть ошибка?


 
Sandman25   (2004-02-10 17:24) [3]

result:= TFrameShiftDayValue.Add(tmpFrameShiftDay);
Буква T точно нужна?


 
Sandman25   (2004-02-10 17:25) [4]

TFrameShiftDayValue.Add - описана как class function(...): integer?
Или буква T - лишняя?


 
siriusP   (2004-02-10 17:30) [5]

Я Вам не верно написал. У меня так: result:= FFrameShiftDay.Add(tmpFrameShiftDayValue); Здесь и падает.


 
Sandman25   (2004-02-10 17:36) [6]

Что значит падает?
Отладчиком (через F7, а не F8) проходили? На какой строке тогда ошибка?


 
siriusP   (2004-02-10 17:46) [7]

На той что я написал


 
Sandman25   (2004-02-10 17:49) [8]

И какая ошибка? С сообщением "Я опять упала"?


 
Юрий Федоров   (2004-02-10 18:36) [9]

tmpFrameShiftDayValue - это кто ?
Еще момент
tmpFrameShiftDay:= TFrameShiftDay.Create(aParent);
try
result:= FFrameShiftDay.Add(tmpFrameShiftDay); finally
if assigned(tmpFrameShiftDay) then FreeAndNil(tmpFrameShiftDay);
end;
Создали экземпляр, бобавили в список, и разрушили
Внимание вопрос - что в списке ?



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

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

Наверх




Память: 0.46 MB
Время: 0.03 c
1-79902
Dr.Karter
2004-02-09 14:38
2004.02.25
Копирование папки


4-80356
Evgeniy_K
2003-11-03 16:03
2004.02.25
Параметры шрифта при выводе через TextOut


3-79618
Pako
2004-02-03 07:36
2004.02.25
Pack


1-79958
WebErr
2004-02-13 18:59
2004.02.25
Как динамически выделить память под двумерный массив?


1-79854
Курдль
2004-02-10 13:26
2004.02.25
Диаграмма Ганта. Компонент типа MS Project и т.п.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский