Hallo, meine Fragerei geht weiter, wenn es nach einiger Leute Meinung auch reiner Schwachsinn ist, aber es gibt auch Leute die bauen Bomben und behaupten, wir Menschen bräuchten diese - Schwachsinn!
Ersterer Code mit dem Tauschen von #13#10 mit irgendwelchen "Pseudozeichen"("##") und das Rücktauschen, alles zum Zwecke, ein mehrzeiliges TMemo in einem IniFile zwischenzulagern funktioniert zur Zufriedenheit. Dafür erst mal - auch trotz der Einwände - vielen Dank!
Aber nun von mir zu gleicher Sache eine vollständige Konsternation, als ich diese Aufgabe zur Ausführung in eine "eigene" Klasse auslagerte.
Der Code ist hier angefügt:
[hier nochmal ausprobiert und Frage ünerarbeitet]
Delphi-Quellcode:
unit EB_Pat_Foto_Satz_U;
interface
uses
variants, sysutils, classes, contnrs;
type
TSatz =
class(TObject)
private
...
FNotiz:
string;
...
...
function GetNotiz:
string;
...
procedure SetNotiz(
const Value:
string);
...
public
...
property Notiz:
string read GetNotiz
write SetNotiz;
...
end;
implementation
uses EB_Pat_Foto_U, controls;
...
// das lesen und Schreiben in die Ini erfolgt über FNotiz
// also im Hauptprogramm über Satz.Notiz
function TSatz.GetNotiz:
string;
begin
result := StringReplace(FNotiz, '
##', #13 + #10, [rfReplaceAll]);
// damit liesst er nicht richtig in die TMemo zurück
// ins Memo erhalte ich z.B. "Dieses##ist##ein##Vogel" zurück
// also keinen Vierzeiler wie erwartet
end;
...
procedure TSatz.SetNotiz(
const Value:
string);
begin
FNotiz := StringReplace(Value, #13 + #10,'
##', [rfReplaceAll]);
// damit schreibt er richtig in die Ini
// Vom Vierzeiler aus dem TMemo
// gelangt ins Ini z.B.:
// [Tier]
// Memo=Dieses##ist##ein##Vogel
end;
...
end.
über die SetNotiz wird das schreibfähige FNotiz richtig erzeugt,
also werden #13#10 gegen ## richtig ausgetauscht um als eine Zeile ins Ini zu gelangen
aber
über GetNotiz werden die Ersatzzeichen ## für die erneute Anzeige im TMemo
nicht zu #13#10 zurückgetauscht, um im TMemo als mehrzeiligen Text anzuzeigen
Habe ich da etwas falsch gemacht oder sie Get... und Set...Methoden nicht richtig verstanden?
Habt vielen Dank für Hilfe
E. B.