Das folgende tuts:
Delphi-Quellcode:
Function MittigAusrichten (Source, Word: string; NeuePosition: integer): string;
begin
while pos(word, Source) < NeuePosition do
insert(' ', Source, 0);
result:= Source;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i: integer;
wordpos, tempint: integer;
begin
wordpos:= -1;
for i:=1 to re.lines.count-1 do
begin
tempint:= pos('Haus', re.lines.strings[i]);
if tempint > wordpos then mitte:= tempint;
end;
for i:= 0 to re.lines.count-1 do
re.lines.strings[i]:= MittigAusrichten(re.lines.strings[i], 'Haus', wordpos);
end;
Blöd bei der Lösung ist allerdings, dass ich vorher schon alle möglichen Word-Positionen kennen muss, um die 'richtige Mitte' zu finden. Anders ginge es nur, wenn ich eine feste Breite / Mitte angeben könnte, aber das funzt nicht:
wordpos:= re.width div 2
Da hängt der Text dann Meilen weit außerhalb des sichtbaren RE-Fensters und man müsste die RE-Ansicht (über die Scrollbars) anpassen, was ich bisher nicht hinbekommen habe. - Weiß das zufällig jemand (RE hat kein HorizScrollbar-Attribut, oder??)?
Danke und Gruß,
frieder