AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Speichern und Laden von Control.Daten

Ein Thema von torud · begonnen am 13. Sep 2007 · letzter Beitrag vom 13. Sep 2007
Antwort Antwort
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#1

Speichern und Laden von Control.Daten

  Alt 13. Sep 2007, 15:08
Hallo Wissende,

ich habe mir eine kleine Procedure geschrieben, mit der ich mir die Daten bestimmter verschiebbarer Controls speichere und wieder lade. Nun möchte ich speziell für das TPRLabel die Textausrichtung noch mitspeichern und zuweisen. Wie könnte ich das realisieren?

Routine zum speichern:
Delphi-Quellcode:
procedure TForm1.btn_pdf_saveClick(Sender: TObject);
var
  i:integer;
  ini:TIniFile;
begin
    ini:=TIniFile.Create(App_Path + 'test.ini');
    for i := 0 to pan_top.ControlCount-1 do
      begin //nur die controls des panels speichern
        ini.WriteInteger(pan_top.Controls[i].Name,'left',pan_top.Controls[i].Left);
        ini.WriteInteger(pan_top.Controls[i].Name,'top',pan_top.Controls[i].Top);
        ini.WriteInteger(pan_top.Controls[i].Name,'width',pan_top.Controls[i].Width);
        ini.WriteInteger(pan_top.Controls[i].Name,'height',pan_top.Controls[i].Height);
      end;
    for i := 0 to pan_main.ControlCount-1 do
      begin //nur die controls des panels speichern
        ini.WriteInteger(pan_main.Controls[i].Name,'left',pan_main.Controls[i].Left);
        ini.WriteInteger(pan_main.Controls[i].Name,'top',pan_main.Controls[i].Top);
        ini.WriteInteger(pan_main.Controls[i].Name,'width',pan_main.Controls[i].Width);
        ini.WriteInteger(pan_main.Controls[i].Name,'height',pan_main.Controls[i].Height);
      end;
    ini.Free;
end;
Für Tipps bedanke ich mich im voraus.
Danke
Tom
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Speichern und Laden von Control.Daten

  Alt 13. Sep 2007, 15:14
Die Textausrichtung ist doch eine Enumeration. Dazu kannst Du Dir diesen Thread (http://www.delphipraxis.net/internal...t.php?t=118360) mal anschauen und die Enumeration dann mit ReadInteger bzw. WriteInteger auslesen/speichern.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#3

Re: Speichern und Laden von Control.Daten

  Alt 13. Sep 2007, 15:58
Danke! Schreiben gayt schon mal. Müsste ich nur noch wissen, was ich in die Uses aufnehmen muss, damit TEnum nicht mehr unbekannt ist...Die Hilfe half mir nicht weiter.
Danke
Tom
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Speichern und Laden von Control.Daten

  Alt 13. Sep 2007, 16:00
TEnum war doch nur ein Beispiel. Textausrichtung ist doch TAlignment (wenn ich nicht gerade auf dem Schlauch stehe).
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#5

Re: Speichern und Laden von Control.Daten

  Alt 13. Sep 2007, 16:03
Umso verblüffter und ratloser bin ich jetzt. Ich dachte, dass dann das Alignment intern in eine Zahl gewandelt wird. Hm und nun? Also mit Ord klappt das ganz gut. Rechtsbübndiger Text ist eine 1 und Linksbündig erhält über ord eine 0. Ich könnte das nun über ein Case lösen, aber gehts auch anders?
Danke
Tom
  Mit Zitat antworten Zitat
Sidorion

Registriert seit: 23. Jun 2005
403 Beiträge
 
#6

Re: Speichern und Laden von Control.Daten

  Alt 13. Sep 2007, 16:05
Führ Dir mal die Unit TypInfo zu Gemüte da gibts zwei Funktionen um Enums in Strings und zurück zu konvertieren. Dann steht in Deiner Ini sogar der Member ordentlich drin.
[edit] in der gleichen Unit gibt es auch Methoden, um dierekt auf published-properties von Objekten zuzugreifen (SetEnumProp/GetEnumProp)[/edit]
Manchmal sehen Dinge, die wie Dinge aussehen wollen mehr wie Dinge aus, als Dinge
<Esmerelda Wetterwachs>
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Speichern und Laden von Control.Daten

  Alt 13. Sep 2007, 16:06
Label.Alignment := TAlignment(Ini.ReadInteger(...));
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#8

Re: Speichern und Laden von Control.Daten

  Alt 13. Sep 2007, 16:18
Dankeschön!
Danke
Tom
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:44 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