hier zeigt der Pointer auf die Variable
pointer := @jpg;
und wenn du später auf das Bild zugreifen willst, dann muß diese Variable noch existieren, was sie wohl nicht mehr tut
wie gesagt, ein Objekt ist im Prinzip auch ein Zeiger, also brauchst du diesen einfach nur umzuwandeln (typcasting)
p := Pointer(jpg);
wenn du nun später wieder das Object haben willst, dann einfach umgekehrt
jpg := TJpegImage(p);
[add]
Zitat:
Delphi-Quellcode:
// Bild laden
If pointer <> nil
then jpg := pointer^;
// Bild anzeigen
NewImage.Picture.Assign(jpg);
PS: Was passiet eigentlich, wenn pointer (es ist etwas unglücklich gewählt, wenn eine Variable wie genauso ein bekannter Typ heißt) NIL ist?
Dann ist nach dem IF das jpg undefiniert und .Assign wird vermutlich mit einer netten
exception reagieren
da wäre dieses schon besser:
NewImage.Picture.Assign(TJpegImage(_pointer_));