Autor |
Beitrag |
neocox
      
Beiträge: 44
|
Verfasst: Fr 19.12.08 21:48
also, bin seit paar tagen in delphi drin
ich nutze codegear 2009+ (so heißt das glaub ich) hab mir dann n Form1 erstellt und wollte in
TMemo oder
Label oder
TEdit oder
RichText oder
TStaticText
einen text einfügen, der mehr als 1000 zeichen hat. jedoch sind alle auf ca 280 beschränkt (steht zumindest immer in der fehlermeldung drin -> zuviele zeichen)
was kann ich denn dann sonst nutzen um soviele zeichen in eins zu bringen ?
|
|
Blackheart666
      
Beiträge: 2195
XP
D3Prof, D6Pers.
|
Verfasst: Fr 19.12.08 22:02
Ein String kann nur 255 Zeichen aufnehmen du kannst aber mit + verknüpfen.
Delphi-Quelltext 1:
| Label.Caption:='255Zeichen' + '255Zeichen'; |
1000 Zeichen im Label 
_________________ Blackheart666
Der Irrsinn ist bei Einzelnen etwas Seltenes, - aber bei Gruppen, Parteien, Völkern, Zeiten die Regel. (Friedrich Nietzsche)
|
|
alzaimar
      
Beiträge: 2889
Erhaltene Danke: 13
W2000, XP
D6E, BDS2006A, DevExpress
|
Verfasst: Fr 19.12.08 22:03
Per Code oder wie oder was? Beschreib dein Problem näher.
Klar, eine Beschreibung z.B. (obwohl 1000 wirklich etwas viel sind). Oder ein Roman in einem TLabel. Wieso nicht?
_________________ Na denn, dann. Bis dann, denn.
|
|
neocox 
      
Beiträge: 44
|
Verfasst: Fr 19.12.08 22:08
naja wenn
Label.Caption:='255Zeichen' + '255Zeichen';
nicht die beste lösung ist (und bei 1000 zeichen im label sehe ich das ja ein  ) bin ich offen für bessere vorschläge... geht diese + option denn auch bei Memo, RichEdit und so ?
oder gibts für 1000 zeichen ne andere möglichkeit, die geeigneter wäre ?
|
|
Blackheart666
      
Beiträge: 2195
XP
D3Prof, D6Pers.
|
Verfasst: Fr 19.12.08 22:15
Zu RichEdit und Memo solltest du dir mal die Eigenschaft Lines anschauen.
_________________ Blackheart666
Der Irrsinn ist bei Einzelnen etwas Seltenes, - aber bei Gruppen, Parteien, Völkern, Zeiten die Regel. (Friedrich Nietzsche)
|
|
neocox 
      
Beiträge: 44
|
Verfasst: Fr 19.12.08 22:17
sind denn die eigenschaften Lines des RichEdit und Memo auch auf 250 zeichen begrenzt ? dann nüztt des mir auch nix. ich müßte dann pro Line 1000 zeichen rein bekommen
|
|
jaenicke
      
Beiträge: 19314
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Fr 19.12.08 22:42
Die Länge ist nicht beschränkt, nur im Quelltexteditor sind die Zeilenlängen beschränkt... Wenn du dein Programm startest und 500 oder 1000 Zeichen oder so ohne Zeilenumbruch einfügst, dann geht das problemlos.
Und im Quelltexteditor kannst du die Zeilen ja mit + zusammensetzen, solange du keinen Zeilenumbruch einfügst ist da auch keiner. Aber im Quelltext so viel Text zu schreiben ist ja ohnehin Schwachsinn hoch 3, wenn dann lädt man so viel Text ja ohnehin aus einer Datei (oder einer Ressource in der Exe).
Die Eigenschaft ScrollBars musst du auf ssBoth stellen, damit du die Scrollleisten hast, sonst würden dir so lange Zeilen ja auch nix nützen.
Ich sehe zwar im Allgemeinen keinen Sinn darin, aber so lange Zeilen gehen problemlos.
|
|
alzaimar
      
Beiträge: 2889
Erhaltene Danke: 13
W2000, XP
D6E, BDS2006A, DevExpress
|
Verfasst: Sa 20.12.08 00:10
Mich würde ein konkretes Beispiel interessieren, wo man im Code (und nicht per DFM) einen Roman als konstanten String einem Text-Control zuweissen müsste. Anderenfalls wäre diese Problematik eher theoretischer Natur, also => Tonne.
_________________ Na denn, dann. Bis dann, denn.
|
|
neocox 
      
Beiträge: 44
|
Verfasst: Sa 20.12.08 12:24
also ich habe eine tlistbox mit z.b. 50 einträgen (mitarbeitern). jedesmal wenn ich einen aussuche (anklicke) will ich z.b. seine biographie (deshalb 1000 zeichen) angezeigt bekommen.
das würde dann so aussehen
Delphi-Quelltext 1: 2: 3: 4: 5: 6:
| case mitarbeiter of
0: label10.caption := 'biographie von meier mit 1200 zeichen'; 1: label10.caption := 'biographie von müller mit 1000 zeichen'; 2: label10.caption := 'biographie von schulze mit 1350 zeichen'; ... |
|
|
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 20.12.08 12:27
Und diese Texte willst Du hartkodiert in die Exe schreiben?
|
|
neocox 
      
Beiträge: 44
|
Verfasst: Sa 20.12.08 12:38
naja ich kopiere mir die texte von meiner homepage in das label... also muss das net abtippen.
und es wäre schon gut wenn alles in einer exe steht und nicht noch extra dateien entstehen.
|
|
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 20.12.08 12:55
Da fallen mir spontan 2 Möglichkeiten ein:
- Ressourcenstrings (sind AFAIK aber auf 1024 Zeichen begrenzt) oder
- Stringkonstanten
Du musst lediglich darauf achten, dass einzelne Stringliterale innerhalb der IDE 255 Zeichen nicht überschreiten, aber das lässt sich durch Konkatenation leicht umgehen.
Delphi-Quelltext 1: 2: 3:
| const sMitarbeiter1 = 'Hier ein Text mit bis zu 255 Zeichen ' + 'weiterer Text mit bis zu 255 Zeichen ' + 'noch mehr Text'; |
|
|
neocox 
      
Beiträge: 44
|
Verfasst: Sa 20.12.08 13:16
|
|
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 20.12.08 13:34
Nein, Du deklarierst die Konstanten so, wie ich es angedeutet habe (ohne das "var" davor, das sind ja Konstanten, keine Variablen). Zuweisen kannst Du sie dann einfach so:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7:
| const sMitarbeiter1 = 'Hallo Welt'; sMitarbeiter2 = 'Delphi macht Spaß'; ... case Mitarbeiter of 1: Label1.Caption := sMitarbeiter1; 2: Label1.Caption := sMitarbeiter2; end; |
|
|
neocox 
      
Beiträge: 44
|
Verfasst: Sa 20.12.08 13:43
naja dafür bin ich als neuling ja bei eiuch
um sowas zu "lernen"... obwohl mir das mit var und const eigentlich hääte klar sein können
|
|
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 20.12.08 13:54
Wir haben schließlich alle mal angefangen 
|
|