![]() |
AW: Ini-Einstellung umwandeln für Komponente
Zitat:
Noch schlanker geht es so:
Delphi-Quellcode:
//Schreiben
MyIni.WriteInteger ('COM','Parity',Ord(MyComport.Parity)); //Lesen MyComPort.Parity := TParity(MyIni.ReadInteger ('COM','Parity',0)); |
AW: Ini-Einstellung umwandeln für Komponente
so würd ich aber nur den Index der Auswahl in der Ini-Datei haben
Ich möchte aber in der Ini-Datei angeben, z. B. Parity=Even und dann im Code auf die Com-Komponente
Delphi-Quellcode:
schreiben
Parity := paEven
|
AW: Ini-Einstellung umwandeln für Komponente
Warum willst Du denn nicht einfach
Delphi-Quellcode:
in Deine Ini schreiben und auf die ganze "Übersetzung" verzichten.
Parity=paEven
So macht es ja die IDE auch in ihren Formular-Dateien. |
AW: Ini-Einstellung umwandeln für Komponente
@Furtbichler
wobei es dann nicht mehr bei allem lesbar ist und die RTTI-Variante näher dran wäre.
Delphi-Quellcode:
Function GetIndexOf(Const Find:String;a:Array of String;Highest:Integer;Default:Integer=0):Integer;
var I: Integer; begin Result := Default; for I := 0 to Highest do if a[i] = Find then Result := i; end; ps := TPrintScale(GetIndexOf('None',c,Ord(poPrintToFit),Ord(poProportional))); |
AW: Ini-Einstellung umwandeln für Komponente
Zitat:
Zitat:
|
AW: Ini-Einstellung umwandeln für Komponente
Zitat:
Delphi-Quellcode:
Entweder du gehts dein Array durch und schaust wo sich der String versteckt.
Const
c:Array[TPrintScale] of String=('None', 'Proportional', 'PrintToFit') ; Oder, wenn man den ENUM über die RTTI in einen String umgewandelt hat, dann wandelt man den String über die RTTI wieder in den Enum (Integer+Cast) zurück. |
AW: Ini-Einstellung umwandeln für Komponente
Zitat:
Zitat:
|
AW: Ini-Einstellung umwandeln für Komponente
Zum Mitschreiben:
Delphi-Quellcode:
uses TypInfo; MyCom.Parity := TParity(GetEnumValue(TypeInfo(TParity),myParityStringFromINI)); MyIni.WriteString('COM','Parity', GetEnumName(TypeInfo(TParity), Integer(MyCOM.Parity)) ; |
AW: Ini-Einstellung umwandeln für Komponente
Zitat:
Meine (aufwendigere) Methode funktioniert dagegen mit allen Enum-Objektpropertys und ermittelt den richtigen Typ dynamisch. Wenn Du den Typ selbst kennst, ist es natürlich schneller und einfacher, den Typ direkt festzulegen. |
AW: Ini-Einstellung umwandeln für Komponente
Zitat:
Und Dank euch allen! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:29 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