Hallo ,
@MacWomble ,13. Okt 2016, 09:59
>>>>
Und wo liegt da das Problem?
<<<<
Kein Problem.
Mit dem Wolfgang Kleinrath habe ich Kontakt aufgenommen , er kann leider nicht mehr helfen (neues Hobby).
Und beim David Price muß ich noch versuchen.
@theo , 13. Okt 2016, 13:34
>>>>
Frank Ranis hat geschrieben:
Frage :
Hast Du dann den Schalter {$MODE DELPHI} wieder weggelassen und nutzt {$mode objfpc}{$H+} ?
Das spielt bei mir keine Rolle. Bei dir schon?
<<<<
Doch ja , unter Windows bekommen ich im FPC_Mode folgende Fehlermeldung bei Compilieren.
Error: illegal type conversation: "Int64" to "TFont"
in der Easysize-Routine
Code: Alles auswählen
function GetCompFont(Component : TComponent) : TFont;
var ptrPropInfo : PPropInfo;
begin
ptrPropInfo := GetPropInfo(Component.ClassInfo, 'Font');
if ptrPropInfo = nil then
Result := nil
else
Result := TFont(GetOrdProp(Component, ptrPropInfo)); // <------------- Hier knallt es
end;
Benutze ich den Delphi-Mode , klappt alles super , und auch deine Änderungen habe ich probiert .
Code: Alles auswählen
Zeile 125 (in SetCompFont) : SetOrdProp(Component, ptrPropInfo, PtrInt(aFont));
Zeile 249: if FCompFont.Size=0 then InitFontSize := 10 else InitFontSize:=FCompFont.Size;
Das funktioniert im Delphi-Mode auch .
Aber im FPC_Mode ist irgend etwas gewaltig anders , betreffend der Klasse TFONT.
Ich habe leider auch noch nicht verstanden , was Lazarus so treibt , wenn man den {$MODE DELPHI} anstelle von {$mode objfpc}{$H+} nutzt.
Gruß
Frank