![]() |
Anzahl Zeilen Beschänkung im Memofeld
Hallo
Der Anzahl Zeilen im Memo Feld wird immer auf 2 beschränkt. Hier folgende Test : Form1.Memo1.MaxLength:= $7F; Form1.Memo1.Lines[0] := '0'; Form1.Memo1.Lines[1] := '1'; Form1.Memo1.Lines[2] := '2'; Form1.Memo1.Lines[3] := '3'; Form1.Memo1.Lines[4] := '4'; es wird immer nur Zeile 0 und 1 geschrieben und nicht mehr, im OI habe ich auch nichts gefunden. Was mache ich falsch ? Muss man etwas in StringList setzen ? Gruss Anton |
AW: Anzahl Zeilen Beschänkung im Memofeld
Die StringListe scheint nur 2 Einträge zu haben. Mich wundert es das es nicht knallt, wenn du den 3. String setzt.
Delphi-Quellcode:
Form1.Memo1.Lines.Add( '...');
|
AW: Anzahl Zeilen Beschänkung im Memofeld
So geht's:
Delphi-Quellcode:
var i : Integer;
begin for i := 0 to 999 do Memo1.Lines.Add(''); //Memo1.MaxLength:= $7F; Memo1.Lines[0] := '0'; Memo1.Lines[1] := '1'; Memo1.Lines[2] := '2'; Memo1.Lines[3] := '3'; Memo1.Lines[4] := '4'; ... |
AW: Anzahl Zeilen Beschänkung im Memofeld
So habe ich das nicht gemeint sondern die Zeilen mit Add()/Appen() hinzufügen.
Oder:
Delphi-Quellcode:
Memo1.Lines.CommText := '0,1,2,3,4';
|
AW: Anzahl Zeilen Beschänkung im Memofeld
Nicht wundern, denn TMemoStrings wirft wirklich keine Exceptions, beim Zugriff auf nicht existierende Zeilenindize.
Beim Auslesen wird im Fehlerfall einfach ein Leerstring rausgegeben und beim Zuweisen wird, seit Jahrzehnten, das nicht gemacht, was man allen Anderen ständig einbläut => prüft gefälligst die Rückgabewerte! Da die MEMO-API aber keine Zeilen enfügt, wenn man ihnen was zuweist und sie noch nicht existieren, dann geht das natürlich ins Leere. Ich weiß jetzt allerdings nicht, wie der Affe da reagiert, da Dieses sich erstmal "nur" auf die Implementierung der WinAPI bezieht. |
AW: Anzahl Zeilen Beschänkung im Memofeld
Hallo,
vielen Dank, also liegt es doch an der StringList. Das Vorher war nur Test, die tatsächliche Anwendung von Memo läuft immer noch nicht. (Die Meldung ist ein array mit 16 bytes.) es wird nur die erste Zeile angezeigt Com3open : Form1.Memo1.Lines.Add(''); // offenbar ist das nicht richtig ?? Form1.Memo1.Lines[0] := 'COM3 open'; For i:= 0 to 15 do //SENDBYTE(Meldung[i]);//vorlaufig ausg. Form1.Memo1.Lines.Add(''); Form1.Memo1.Lines[i+3]:= IntToHex(Meldung[i],2); end; Form1.Memo1.Lines.Add(''); Form1.Memo1.Lines[20] := 'CNCStatus gesendet'; Gruss Anton |
AW: Anzahl Zeilen Beschänkung im Memofeld
Zitat:
Zitat:
Delphi-Quellcode:
Form1.Memo1.Lines.Text := 'COM3 open'; For i:= 0 to 15 do begin //SENDBYTE(Meldung[i]);//vorlaufig ausg. Form1.Memo1.Lines.Add( IntToHex(Meldung[i],2)); end; Form1.Memo1.Lines.Add('CNCStatus gesendet'); |
AW: Anzahl Zeilen Beschänkung im Memofeld
Wieso so umständlich?
Delphi-Quellcode:
Form1.Memo1.Lines.Add('COM3 open');
For i:= 0 to 15 do //SENDBYTE(Meldung[i]);//vorlaufig ausg. Form1.Memo1.Lines.Add(IntToHex(Meldung[i],2)); Form1.Memo1.Lines.Add(''); Form1.Memo1.Lines.Add('CNCStatus gesendet'); |
AW: Anzahl Zeilen Beschänkung im Memofeld
Zitat:
Delphi-Quellcode:
ist umständlich :stupid:
Begin.. END
|
AW: Anzahl Zeilen Beschänkung im Memofeld
Das bezog sich auf den Post vorher, der rote Kasten ist ja wieder im Urlaub.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:24 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 by Thomas Breitkreuz