Переделал функцию,но как передать в новый объект процедуры первоначальной формы?
Код:
function CreateFormShowForm(str:String;bool:boolean;sz:Word):Boolean;
var
ERes:EResNotFound;
// Action:TCloseAction;
begin
// raise ERes.Create('Error!');
result:=False;
App:=Application.Create(nil);
App.Initialize;
try
myFormPicter:=TFormPicter.CreateNew(nil,1);
myFormPicter.Image1:=TImage.Create(nil);
myFormPicter.Image1.Parent:= myFormPicter;
myFormPicter.Timer1:=TTimer.Create(nil);
with myFormPicter do
begin
Color:=clAppWorkSpace;
Height:=340;
Width:=420;
Image1.Height:=Height;
Image1.Width:=Width;
// myFormPicter.Image1.OnClick():=ImageClick();
with Image1 do
begin
end;
Timer1.Interval:=5000;
Timer1.Enabled:=bool;
BorderStyle:=bsToolWindow;
WindowState:=wsNormal;
if FileExists(str)then
begin
try
Image1.Proportional:=true;
Image1.AutoSize:=true;
Image1.Center:=True;
Caption:='Ïðîñìîòð '+str;
Image1.Visible:=True;
Image1.Transparent:=True;
Image1.Picture.LoadFromFile(str);
Image1.Enabled:=true;
Image1.Refresh;
Image1.Align:=alClient
except
//FormPicter.Caption:='Îøèáêà çàãðóçêè èçîáðàæåíèÿ' ;
ShowMessage('Îøèáêà çàãðóçêè èçîáðàæåíèÿ' );
result:=False;
Exit;
end;
try
result:=True;
Enabled:=True;
ShowModal;
Free;
//result:=True;
except
result:=False;
ShowMessage('Îøèáêà âûïîëíåíèÿ ôîðìû');
exit;
end;
end;
end;
//App.Free;
//DllApp.Destroy;
//btkDLLProc();
//btkDLLProc(1);
except
Eres:=EResNotFound.Create('Error');
// raise EResNotFound.CreateFmt('ERes', 'Name');
// ShowMessage(Eres.Message);
//Eres:=EResNotFound.Create('Error');
result:=False;
// ShowMessage(ERes.);
Exit;
end;
end;
Последний раз редактировалось infopol, 16.05.2023 в 14:18.
Причина: ddd
|