AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Suche TMemo-Komponente mit Zeilenlänge > 1024
Thema durchsuchen
Ansicht
Themen-Optionen

Suche TMemo-Komponente mit Zeilenlänge > 1024

Ein Thema von bernau · begonnen am 5. Mär 2021 · letzter Beitrag vom 5. Mär 2021
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.538 Beiträge
 
Delphi 11 Alexandria
 
#11

AW: Suche TMemo-Komponente mit Zeilenlänge > 1024

  Alt 5. Mär 2021, 15:27
Imho besteht das Notepad++ auch aus einem SynEdit...oder? ...Allerdings die C++ Version.
Stimmt. An SynEdit habe ich gar nicht mehr gedacht. Ich werde es mal testen.
Hallo Gerd, SynEdit geht definitiv, ich habe die Komponente auch in meinem Pascal-Editor drin.
  Mit Zitat antworten Zitat
Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.295 Beiträge
 
Delphi 12 Athens
 
#12

AW: Suche TMemo-Komponente mit Zeilenlänge > 1024

  Alt 5. Mär 2021, 16:28
Hi Harry,

hab's grade eingebunden. Funktioniert wunderbar.
Gerd
Kölner Delphi Usergroup: http://wiki.delphitreff.de
  Mit Zitat antworten Zitat
Benutzerbild von mschaefer
mschaefer

Registriert seit: 4. Feb 2003
Ort: Hannover
2.032 Beiträge
 
Delphi 12 Athens
 
#13

AW: Suche TMemo-Komponente mit Zeilenlänge > 1024

  Alt 5. Mär 2021, 16:44
Man könnte es auch in eine TListView einlesen

Delphi-Quellcode:

uses
  ComCtrls, Types, StrUtils;

procedure ListViewSaveToFile(ListView: TListView; const FileName: string);

  procedure AddTextToLine(var Line: string; const Text: string);
  begin
    Line := Line + Text + #9;
  end;

  procedure MoveCompletedLineToList(const Strings: TStringList; var Line: string);
  begin
    Strings.Add(System.Copy(Line, 1, Length(Line)-1));//remove trailing tab
    Line := '';
  end;

var
  Strings: TStringList;
  LatestLine: string;
  i, j: Integer;

begin
  LatestLine := '';

  Strings := TStringList.Create;
  try
    for i := 0 to ListView.Items.Count-1 do begin
      AddTextToLine(LatestLine, ListView.Items[i].Caption);
      for j := 0 to ListView.Items[i].SubItems.Count-1 do begin
        AddTextToLine(LatestLine, ListView.Items[i].SubItems[j]);
      end;
      MoveCompletedLineToList(Strings, LatestLine);
    end;
    Strings.SaveToFile(FileName, TEncoding.UTF8);
  finally
    Strings.Free;
  end;
end;

procedure ListViewLoadFromFile(ListView: TListView; const FileName: string);
var
  Strings: TStringList;
  i, j: Integer;
  Fields: TStringDynArray;
  Item: TListItem;
begin
  Strings := TStringList.Create;
  try
    Strings.LoadFromFile(FileName);
    ListView.Clear;
    for i := 0 to Strings.Count-1 do begin
      Fields := SplitString(Strings[i], #9);
      Item := ListView.Items.Add;
      Item.Caption := Fields[0];
      for j := 1 to high(Fields) do begin
        Item.SubItems.Add(Fields[j]);
      end;
    end;
  finally
    Strings.Free;
  end;
end;
Martin Schaefer
Phaeno
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#14

AW: Suche TMemo-Komponente mit Zeilenlänge > 1024

  Alt 5. Mär 2021, 19:35
Man könnte es auch in eine TListView einlesen
Wenn alles in eine Zeile soll limitiert ein TListView noch stärker als es ein TMemo/TRichEdit macht.

Ja du splittest da etwas, aber das war ja nicht gefordert.

Ich glaub bei 260 (?) ist da aus die Maus.
Diese ganzen limits kommen nicht von Delphi, die Steuerelemente vom System sind dafür verantwortlich.

Lösung wurde ja gefunden
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 03:51 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