![]() |
Copy / Paste Anfrage
Dear Friends,
ich muss mit Rechtsklick aus einer PDF Datei 3 Zeilen Text koieren und in Stringgrid eifügen. Bovor ich einfüge es muss jeweils am Zeilenende ein Leerzeichen eingefügt werden. Wie kann ich es erledigen ? Text Format ist wie folgt: 1111 11111 1111 111111 1111 11111 2222 22222 222 22222 2222 222 3333 333 3333 333333 3333 33333 Mein Code lautet: procedure TfrmMain.BTN_InsertClick(Sender: TObject); var WordCount: Integer; WordStart: Integer; S: String; I: Integer; begin // WordCount := 0; WordStart := 1; S := Clipboard.AsText + ' '; s := s.Replace(',', '', [rfReplaceAll, rfIgnoreCase]); s := s.Replace('.', ',', [rfReplaceAll, rfIgnoreCase]); for I := 1 to Length(S) do if S[I] = ' ' then begin if WordStart <> I then begin StringGrid1.Cells[WordCount mod StringGrid1.ColCount, WordCount div StringGrid1.ColCount] := Copy(S, WordStart, I - WordStart); Inc(WordCount); end; WordStart := I + 1; end; StringGrid1.RowCount := ((WordCount - 1) div StringGrid1.ColCount) + 1; dbedit10.text := StringGrid1.Cells[0, 0]; dbedit11.text := StringGrid1.Cells[1, 0]; dbedit12.text := StringGrid1.Cells[2, 0]; dbedit13.text := StringGrid1.Cells[3, 0]; dbedit14.text := StringGrid1.Cells[4, 0]; dbedit15.text := StringGrid1.Cells[5, 0]; dbedit16.text := StringGrid1.Cells[0, 1]; dbedit17.text := StringGrid1.Cells[1, 1]; dbedit18.text := StringGrid1.Cells[2, 1]; dbedit19.text := StringGrid1.Cells[3, 1]; dbedit20.text := StringGrid1.Cells[4, 1]; dbedit21.text := StringGrid1.Cells[5, 1]; dbedit22.text := StringGrid1.Cells[0, 2]; dbedit23.text := StringGrid1.Cells[1, 2]; dbedit24.text := StringGrid1.Cells[2, 2]; dbedit25.text := StringGrid1.Cells[3, 2]; dbedit26.text := StringGrid1.Cells[4, 2]; dbedit27.text := StringGrid1.Cells[5, 2]; end; Vielen Dank ! |
AW: Copy / Paste Anfrage
Füge bitte [delphi]-Tags um den Sourcecode ein, damit man ihn auch lesen kann. Das erhöht die Wahrscheinlichkeit für Antworten gewaltig.
|
AW: Copy / Paste Anfrage
Möchtest du den Zeilenumbruch durch ein Leerzeichen ersetzen? Das sollte so gehen:
Delphi-Quellcode:
s := s.Replace(sLineBreak, ' ', [rfReplaceAll]);
// je nach Format des Zeilenumbruchs statt sLineBreak z.B. #10 oder #13 |
AW: Copy / Paste Anfrage
![]() ![]() ![]() oder oder oder ...
Delphi-Quellcode:
Oder zwei StringListen. Die Erste trennt die Zeilen und die Zeite die Wörter jeder einzelnen Zeile.
//var SL: TStringList;
SL.StrictDelimiter := True; SL.Delimiter := ' '; SL.DelimitedText := S; { so, jetzt ist jede "Zeile" ein Wort } |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:56 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