Autor Beitrag
MrZBot
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 20



BeitragVerfasst: Fr 03.07.09 17:30 
Hallo,
Ich habe folgende Frage:
Wie kann ich im Code Strings mit mehr als 255 verwenden? Generell kann ich in Strings zwar quasi unendlich viele Zeichen speichern, aber wie kann ich das tun, ohne sie zu generieren? Ich möchte nämlich einen längeren Text im Programm anzeigen lassen, der Vorher geschrieben wurde...
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10185
Erhaltene Danke: 1261

W11x64
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Fr 03.07.09 17:31 
Moin!
ausblenden Delphi-Quelltext
1:
2:
const
  MyStr = '123'+'456'+...
;)

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
Boldar
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1555
Erhaltene Danke: 70

Win7 Enterprise 64bit, Win XP SP2
Turbo Delphi
BeitragVerfasst: Fr 03.07.09 17:41 
MrZBot Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 20



BeitragVerfasst: Fr 03.07.09 17:58 
Also geht es nicht wie gewünscht? Ich möchte einen Text mit 5000 Zeichen nicht lauter 255er Parts aufteilen müssen...
Sinspin
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1338
Erhaltene Danke: 120

Win 10
RIO, CE, Lazarus
BeitragVerfasst: Fr 03.07.09 17:58 
Schmeiß dir einfach ein Memo (TMemo) auf dein Form und schreibe den Text da rein.
Da kannst du ganze Romane unterbringen ohne das es voll wird.
Das Memo macht du dann einfach unsichtbar und zeigst den Text an wie und wo du willst.

Ist zwar keine tolle Lösung, aber es geht.

_________________
Wir zerstören die Natur und Wälder der Erde. Wir töten wilde Tiere für Trophäen. Wir produzieren Lebewesen als Massenware um sie nach wenigen Monaten zu töten. Warum sollte unser aller Mutter, die Natur, nicht die gleichen Rechte haben?
MrZBot Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 20



BeitragVerfasst: Fr 03.07.09 18:03 
Hey Sinspin, das war die Antwort, auf die ich gewartet habe ;-) Danke!
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Fr 03.07.09 22:26 
Hi Sinspin, das war genau die Antwort, wie man's nicht tun sollte ;-)

Das Stichwort Ressourcen ist ja bereits gefallen und hier wesentlich angebrachter. VCL-Controls sind nicht als Datenspeicher gedacht, sondern dienen der Anzeige. Ressourcen sind zum Vorhalten von Daten da.

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
Sinspin
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1338
Erhaltene Danke: 120

Win 10
RIO, CE, Lazarus
BeitragVerfasst: Sa 04.07.09 02:02 
user profile iconBenBE hat folgendes geschrieben Zum zitierten Posting springen:
Hi Sinspin, das war genau die Antwort, wie man's nicht tun sollte ;-)

Das Stichwort Ressourcen ist ja bereits gefallen und hier wesentlich angebrachter. VCL-Controls sind nicht als Datenspeicher gedacht, sondern dienen der Anzeige. Ressourcen sind zum Vorhalten von Daten da.

Das ist mir schon klar, aber die Lösung ist schneller realisiert als mit Ressourcen und auch fixer (jedenfalls mit D7) geändert wenn es nötig ist.
Ob man bei neueren Versionen die Ressourcen bequemer bearbeiten kann weis ich nicht.

_________________
Wir zerstören die Natur und Wälder der Erde. Wir töten wilde Tiere für Trophäen. Wir produzieren Lebewesen als Massenware um sie nach wenigen Monaten zu töten. Warum sollte unser aller Mutter, die Natur, nicht die gleichen Rechte haben?
Reinhard Kern
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 591
Erhaltene Danke: 14



BeitragVerfasst: Sa 04.07.09 11:10 
user profile iconBenBE hat folgendes geschrieben Zum zitierten Posting springen:
... VCL-Controls sind nicht als Datenspeicher gedacht, sondern dienen der Anzeige. Ressourcen sind zum Vorhalten von Daten da.


Hallo,

im Prinzip richtig, aber Resource-Strings sind auch begrenzt, und darüber hat jeder Resourceeditor und -Compiler eigene Ansichten. Weil mit den üblichen Mitteln lange Strings garnicht gehen, bin ich auch auf RC_DATA ausgewichen, aber Resourcen gehören wohl zu den wenig erforschten Landschaften: FindResource ist zickig mit dem Finden nach ID (wahrscheinlich wird MAKEINTRESOURCE unter Delphi nicht richtig umgesetzt), und die entsprechende VCL-Funktion lässt gleich das gesamte Programm abstürzen, wenn eine Resource nicht da ist.

Der Vorteil ist natürlich, dass man keine extra Datei braucht.

Gruss Reinhard
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19346
Erhaltene Danke: 1754

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Sa 04.07.09 17:44 
user profile iconReinhard Kern hat folgendes geschrieben Zum zitierten Posting springen:
im Prinzip richtig, aber Resource-Strings sind auch begrenzt, und darüber hat jeder Resourceeditor und -Compiler eigene Ansichten.
Man muss doch nur den Text in eine Textdatei speichern und diese dann einbinden, fertig. Danach noch via TResourceStream und ggf. z.B. TStringStream auslesen, fertig. ;-)
Popov
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1655
Erhaltene Danke: 13

WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
BeitragVerfasst: Sa 04.07.09 17:55 
Du hast schon Recht, aber du darfst nie vergessen, daß es Tipps für Anfänger sind. Zugegeben, man kann auf dem Standpunkt stehen, daß einer gleich von Anfang an es richtig machen sollte, aber keiner wird ewig Tricks anwenden. Entweder hört er auf zu progen, dann erledigt sich das von selbst, oder er macht weiter, dann kommt irgendwann der Zeitpunkt wo er es richtig machen wird. Ken Anfänger kann sich das Wissen innerhalb von zwei Wochen aneignen. Man muß bestimmtes Wissen zurückstellen.

_________________
Popov
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19346
Erhaltene Danke: 1754

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Sa 04.07.09 17:59 
user profile iconPopov hat folgendes geschrieben Zum zitierten Posting springen:
aber keiner wird ewig Tricks anwenden.
Das stimmt bei zwei Sachen nicht so richtig glaube ich. Viele, wenn nicht die meisten, die am Anfang die Komponenten nicht lernen richtig zu bennennen, machen es auch später nicht. Und sehr viele, die visuelle Komponenten als Datenspeicher missbrauchen, bleiben auch dabei.
Jedenfalls ist das so die Erfahrung, die ich bisher machen musste.