wunderwaffe: тупят другие (karliki)
доктор Вандершпигель ([personal profile] wunderwaffe) wrote2021-09-18 06:49 am

Лазарь! Иди нахуй-2

Итак, накатила суть, а суть такова. (Кстати, совет - ставьте ангоязычный лазарь, бо искать сообщения о ошибках на форумах tools->options->general->language)

У нас есть компонент tchart2da, который является наследником TImage. Что-то делается при создании этого компонента
constructor tchart2da.Create(TheOwner: TComponent);
что-то при изменении его размеров
procedure tchart2da.Resize;
(например, когда aligh=alClient, и окно программы меняется.)

Все прекрасно работает. А вот как работает когда мы кладем компонент на форму при создании программы -

constructor tchart2da.Create(TheOwner: TComponent);
ни хуя не вызывается, зато вызывается
procedure tchart2da.Resize;
и так как без конструктора, то Лазарус рушится к хуям.

Причем вызывается и исполняется как-то через жопу. Когда я пытался вести лог вызовами ф-ии

procedure recLoga(s:string);
var Vf: textfile;
begin
AssignFile(Vf, 'c:/log.txt');
if fileexists('c:/log.txt')=false then Rewrite(Vf) else append(Vf);
writeln(vf,s);
closefile(vf);
end;

то ни хуя он не вёлся, показывается что происходит только из showmessage();
И естественно - при каждых манипуляциях в компоненте надо каждый раз пересобирать лазарь.