Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Max Stringlen von Stringgrid.Cell (https://www.delphipraxis.net/199634-max-stringlen-von-stringgrid-cell.html)

wschrabi 7. Feb 2019 12:41

Max Stringlen von Stringgrid.Cell
 
Hallo
meine Celle in einem Stringgrid ist 6700 Char lang. Es wird in der Stringgrid Table nicht angezeigt.
Was kann ich tun?
DANKE - habe Seattle.

DP-Maintenance 7. Feb 2019 12:54

Dieses Thema wurde am "07. Feb 2019, 13:54 Uhr" von "Luckie" aus dem Forum "Programmieren allgemein" in das Forum "GUI-Design mit VCL / FireMonkey / Common Controls" verschoben.

philipp.hofmann 7. Feb 2019 13:05

AW: Max Stringlen von Stringgrid.Cell
 
Ich kenne die Anwendung ja nicht, würde mich aber zu allererst fragen, ob ich in der Tabelle tatsächlich so viele Zeichen darstellen will oder in der Tabellendarstellung abkürze (…) und nur wenn man eine Zelle auswählt, alle Zeichen anzeige.
Ich selbst nutze die TMSFMXGrid-Implementierung, da kann man z.B. sehr einfach einer Zelle ein Kommentar zuordnen und dort kann ich dann auch längere Einträge darstellen.

wschrabi 7. Feb 2019 13:49

AW: Max Stringlen von Stringgrid.Cell
 
Danke, ja ich weiss.. aber es ist ein TEXT der sehr variable sein kann von 1 - 7000 Zeichen.
Ich hab es jetzt in ein MEMO copiert, da zeigt er alles an. Dh in der Celle ist es drin,nur wird
am Screen in dem STringgrid nur eine leere Zeile sichtbar.
KOmisch nicht? Wenn die Note ca 200 Zeichen lang ist, klappt es wunderbar.

Danke für Deinen RAT:
mfg
ws

hoika 7. Feb 2019 15:21

AW: Max Stringlen von Stringgrid.Cell
 
Hallo,
hm, also bei mir geht's.

Delphi-Quellcode:
type
  TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;


procedure TForm1.FormCreate(Sender: TObject);
var
  sString: String;
  iChar: Integer;
begin
  sString:= '';
  for iChar:= 1 to 600 do
  begin
    sString:= sString+'123456789';
  end;
  StringGrid1.Cells[0,0]:= sString;
  StringGrid1.Colwidths[0]:= 1000;
end;

TurboMagic 7. Feb 2019 19:32

AW: Max Stringlen von Stringgrid.Cell
 
Zitat:

Zitat von hoika (Beitrag 1424988)
Hallo,
hm, also bei mir geht's.

Delphi-Quellcode:
type
  TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;


procedure TForm1.FormCreate(Sender: TObject);
var
  sString: String;
  iChar: Integer;
begin
  sString:= '';
  for iChar:= 1 to 600 do
  begin
    sString:= sString+'123456789';
  end;
  StringGrid1.Cells[0,0]:= sString;
  StringGrid1.Colwidths[0]:= 1000;
end;

Gut, dass es bei dir geht. Nur in welchem Delphi?
Vielleicht einem neueren als Seattle, das der OP benutzt?

hoika 7. Feb 2019 22:20

AW: Max Stringlen von Stringgrid.Cell
 
Hallo,
das war gerade D2007 ...

Delphi.Narium 7. Feb 2019 22:43

AW: Max Stringlen von Stringgrid.Cell
 
Bei Delphi 7 geht das auch, solange nicht am Anfang eines Textes ein Zeilenumbruch steht, dann sieht man da auch nix.

Es wäre also mal interessant zu erfahren, ob es sich bei den bis zu 7000 Zeichen langen Texten um Einzelier handelt oder um "richtige" Texte, also irgendwas mit ..,- und Zeilenumbrüchen und ggfls. irgendwelchen Formatierungen ...

hoika 8. Feb 2019 06:33

AW: Max Stringlen von Stringgrid.Cell
 
Hallo,
#TurboMagic,
das war ein Minimal-Beispiel, was der Tread-Ersteller einfach mal testen soll.
Der nächste Eintrag von #Delphi.Narium zeigt ja mögliche "Fehler" auf.

Ich wollte erst mal nur verhindern, dass jemand dem armen TStringGrid die Schuld gibt,
dass bestimmten Daten nicht angezeigt werden.

peterbelow 8. Feb 2019 10:21

AW: Max Stringlen von Stringgrid.Cell
 
Das VCL TStringgrid hat keinen Limit für die Länge des Textes in einer Zelle. Enthält dein Text vielleicht #0 oder einen Zeilenumbruch? Ist das Grid read-only oder editierbar? Wenn letzteres, goAlwaysShowEditor in Options oder nicht? Erscheint der Text wenn Du die Zeilenhöhe vergrößerst?

wschrabi 8. Feb 2019 14:29

AW: Max Stringlen von Stringgrid.Cell
 
dANKE AN ALLE:
Ja das Cell ist editierbar und man kann reinspringen, da erscheint dann eine zeile.
Ich muss testen ob da linebreaks drin sind. DAnke euch für Eure kompetante Antwort.
mfg

wschrabi 8. Feb 2019 15:01

AW: Max Stringlen von Stringgrid.Cell
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo leute.
Also ich komm da nicht weiter. Ich habe hier ein DEMO mit einem TXT File.
Bei einem Button wird das TXT in das MEMO geladen und dann beim 2. Button in das Stringgrid.
Wenn man dann in das Stringgrid hüpft ist es nicht eine ZEile sondern abgeschnitten.
WIESO?
:?:

Delphi.Narium 8. Feb 2019 15:30

AW: Max Stringlen von Stringgrid.Cell
 
memo1.text endet immer mit 'nem Zeilenumbruch. Ansonsten scheint der Text keine Sonderzeichen zu enthalten.

Was passiert bei
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
begin
// einmaliges Zuweisen dürfte reichen.
//   for i := 0 to 8000 do
//      begin
      stringgrid1.cells[1,1]:=Trim(memo1.text);
//      end;
end;
Bei Delphi 7 tritt der von Dir genannte Effekt auf, sobald im Text ein Zeilenumbruch enthalten ist. Man sieht in der Zelle quasi immer das Ende des Textes und das ist bei memo1.text halt ein Zeilenumbruch. Und wenn man den sieht, sieht man eben nix.
Mal die Optionen des Stringgrids ändern, so dass wie Höhe und Breite der Zellen verändert werden kann. Dann müsste irgendwann auch Text in der Zelle zu sehen sein.

wschrabi 8. Feb 2019 17:19

AW: Max Stringlen von Stringgrid.Cell
 
Danke für EUre HIlfe.
In Seattle ist es vielleicht so, dass der Stringgrid.Cell bei ca 6000 Zeichen nur im Grid umbricht.
Das Textfile hat keine CHAR die nicht ANSI sind dir. Hab auch schon eine Filterroutine rein getan.
Doch ich denke das ist neu in Seattle. Doch das Demo oben mit den String+ zahlen klappt auch ohne diesen Umbruch. Ich verstehs nicht. :roll:


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:06 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