Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Pointer->Integer, Integer->Pointer (https://www.delphipraxis.net/41765-pointer-integer-integer-pointer.html)

mumu 8. Mär 2005 10:02


Pointer->Integer, Integer->Pointer
 
ich möchte in der Tag-Eigenschaft (ist ein integer) einer Komponente einen zeiger auf einen string speichern und anschließend wieder auslesen.

speichern:
str: string;
komponente.tag := Integer(@str);

auslesen?

stimmt das speichern so? und wie muss ich das jetzt auslesen?

alcaeus 8. Mär 2005 10:06

Re: Pointer->Integer, Integer->Pointer
 
Auslesen:

Delphi-Quellcode:
type
  PFOrm = ^TForm;

...

PForm(Tag)^.Caption := 'Test';
Sollte funktionieren.

Greetz
alcaeus

himitsu 8. Mär 2005 10:23

Re: Pointer->Integer, Integer->Pointer
 
Und wie ist das hiermit?

Delphi-Quellcode:
str: String;

str := String(Komponente.Tag^);


Hab's ja nicht so mit Zeigern, aber das sollte doch die Umkehrung sein?
Code:
komponente.tag := Integer(@str);
komponente.tag := [color=#ff0000]@[/color]str;
str := komponente.tag[color=#ff0000]^[/color];
str := String(komponente.tag^);

Sprint 8. Mär 2005 10:24

Re: Pointer->Integer, Integer->Pointer
 
Zitat:

Zitat von mumu
ich möchte in der Tag-Eigenschaft (ist ein integer) einer Komponente einen zeiger auf einen string speichern und anschließend wieder auslesen.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);

  procedure Test;
  begin
    ShowMessage(String(Button1.Tag));
  end;

var
  S: String;
begin

  S := 'Hallo Welt!';
  Button1.Tag := Integer(S);
  Test;

end;

mumu 10. Mär 2005 17:24

Re: Pointer->Integer, Integer->Pointer
 
vielen dank für euere Antworten!

funktioniert jetzt prima!

gruß


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:46 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz