var
P: Pointer;
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
P := @Application.MainForm;
Pointer(P^) := Form1;
Application.Run;
end.
Bu sekilde gecici süre icin sorunu cözdüm.
Applikasyonun Run yapmamasinin sebebi MainForm'un NIL olmasindan kaynaklaniyor.
Daha farkli bir yöntem arayisi icerisindeyim. Zira Opsiyonlardan manuel olarak MainForm degistirilebilinmeli.
MainForm'un TForm tipinde olmak zorunda olduğunu görebilirsiniz. Dolayısıyla uygulamanızın ana formu yapmak istediğiniz bir formu TCustomForm'dan değil, TForm'dan türetmek durumundasınız.
@SimaWeb; hocam tesekkür ederim.
Forms.pas dosyasi icerisindeki (deneme amacli) tüm TForm degiskenlerini TCustomForm ile replace ettigimde dahi olmuyor.
Yukaridaki sekilde calistirdim fakat el ile manuel müdahele sart.
Ben OTA servisler ile create edecegim. Bu nedenle IDE'den MainForm secildiginde otomatik halledebilmem gerekli.
Bu olaya istinaden; tcustomform'u temel alan bir form register ettim. Property'ler tformdan itibaren published oluyorlar. Ben direkt TMyForm = class(TCustomForm) dedigim halde object inspectorda tüm propertyleri görüyorum. Sanirim ota servisleri cast ediyor.
Bunun caresi varmidir?