![]() |
globaler record, is das überhaupt möglich?
hi.
ich hab mir überlegt, dass die einfachste möglichkeit für mein projekt eine globalen record wäre. aber ich bekomme folgenden fehler:
Code:
ich weiß was das bedeutet, aber gibt es nicht eine möglichkeit, das ich doch noch einen globale record verwenden kann?
';' expected but '=' found
code ausschnitt:
Delphi-Quellcode:
bis denne
...
var Form1: TForm1; implementation uses Unit2; {$R *.dfm} var content : record autor : string = Autor_Edit.Text; publisher : string = Publisher_Edit.Text; copyright : string = Copyright_Edit.Text; keywords : string = Keywords_Edit.Text; description : string = Description_Edit.Text; end; procedure TForm1.MetaInfo_BtnClick(Sender: TObject); begin ExplainForm.Show; end; procedure TForm1.Button1Click(Sender: TObject); begin Meta_Memo.Lines.Clear; Meta_Memo.Lines.Add(content) end; end. |
Re: globaler record, is das überhaupt möglich?
globaler record geht natürlich....
aber ich glaub das problem liegt bei der initialisierung von deinen strings, schreib einfach deinen record nur so(zumindest hat das bei mit gefunzt):
Delphi-Quellcode:
und geb den string seinen inhalt dann bei einem ereignis wie einem buttonklick, vielleicht kannst du die Strings auch im oncreate von form1 laden. gruß
var content : record
autor : string; publisher : string; copyright : string; keywords : string; description : string; end; |
Re: globaler record, is das überhaupt möglich?
Mach's so:
Delphi-Quellcode:
var
Form1: TForm1; var content : record autor : string; publisher : string; copyright : string; keywords : string; description : string; end; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin content.autor := Autor_Edit.Text; content.publisher := Publisher_Edit.Text; content.copyright := Copyright_Edit.Text; content.keywords := Keywords_Edit.Text; content.description := Description_Edit.Text; end; Da, wo du's deklariert hast werden die Edits noch nicht erkannt, so zu sagen. ;) Nachtrag: Too tired and too late. :( |
Re: globaler record, is das überhaupt möglich?
und genau DAS wollte ich vermeiden.
ich wollte den variablen im record gleich beim deklarieren einen Wert zuweisen. :roll: daraus schließe ich, das ich das nicht machen kann. aber trotzdem danke :thuimb: |
Re: globaler record, is das überhaupt möglich?
Du weist den Strings als Vorbelegung den Inhalt eines Textfeldes zu. Das kann natürlich gar nicht gehen, da zum Compilierzeitpunkt diese Textfelder noch gar nicht existieren!
|
Re: globaler record, is das überhaupt möglich?
@Olf: MAcht das so einen großen Unterschied, ob man es am Anfang zuweist, oder am Anfang? :mrgreen:
Ne, ich meine, einmal so direkt und einmal im OnCreate, das ist doch das Selbe, oder nicht? :gruebel: |
Re: globaler record, is das überhaupt möglich?
so hätte ich mir weitere tipparbeit ersparen können....
|
Re: globaler record, is das überhaupt möglich?
Ein Record wird mit dem Schlüsselwort type eingeleitet und nicht [b]var.
|
Re: globaler record, is das überhaupt möglich?
oh :oops:
wusste ich nicht. hat sich aber erledigt die ganze sache. trotzdem danke, hab viel dazugelernt :zwinker: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz