Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Arrays für Textout (https://www.delphipraxis.net/37499-arrays-fuer-textout.html)

hansklok 6. Jan 2005 15:39


Arrays für Textout
 
Hi,
ich möchte mehrere Text auf einem Bitmap ausgeben und dies mit Arrays.

Delphi-Quellcode:
var
text: array[1..1000] of String;

Nun möchte ich, dass der Text aus einem Editfeld ausgegeben wird. Dieser text ist dann natärlich die entsprechende Variable (z.B. Text[5]:= Edit1.Text). Aber, und deshalb mache ich das ja mit array`s, ich möchte den Text immer in das Editfeld eingen und mein Grafikprogramm ist jetzt so geschrieben, dass wenn ich bei dem markierten Textobjekt den Text ändere, dass der bei allen zur Laufzeit erstellten Texten genau den Text schreibt, den ich in das Editfeld eingegeben habe. Also als Texteingabequelle soll immer das Editfeld dienen, jedoch soll das array immer um 1 erhöht werden, sodass ich so zu sagen ein neues Textobjekt angelegt habe, obwohl es eigentlich nur ein string ist. Ich hoffe, ihr wisst ungefähr was ich meine! Habt ihre ne Idee, wie ich den Source machen könnte? Eventuell über ne for-to Schleife oder so??

hansklok

Joe24 6. Jan 2005 15:48

Re: Arrays für Textout
 
Für diesen Fall ist die Verwendung einer Instanz von TStringList zu empfehlen.

Nikolas 6. Jan 2005 15:49

Re: Arrays für Textout
 
Ich glaube kaum, dass dir jemand helfen kann. Ich hab mir den Text zweimal durchgelesen und immer noch keine Ahnung, was du sagen willst...

Joe24 6. Jan 2005 15:55

Re: Arrays für Textout
 
Füge mit
Delphi-Quellcode:
StringList.Add( Edit.Text)
den Text in die Liste ein.

Gebe den Text ungefähr so aus:
Delphi-Quellcode:
var
  i : Integer;
...
for i := 0 to StringList.Count -1 do
  [?].Canvas.TextOut( 0, i* 20, StringList[ i]);
Must du selbstverständlich noch an deinen Code anpassen.

hansklok 6. Jan 2005 16:01

Re: Arrays für Textout
 
Liste der Anhänge anzeigen (Anzahl: 1)
Also ich schicke mal ein bild mit.

Bis jetzt funktioniert die Textausgabe folgendermaßen:

Delphi-Quellcode:
Bmp.Canvas.Textout()Firspos.X, FirstPos.Y, Form3.Edit2.Text);
nun sieht man aber auf dem Bild deutlich, dass wenn man einen 2. Text erstellt, dass genau derselbe ist, wie der 1. Text. Ändere ich nun den Text im Editfeld, dann ändern sich beide Text in diesen eingegebenen Text. Ich wollte aber, dass sich nur der markierte Text ändert!

Joe24 6. Jan 2005 16:05

Re: Arrays für Textout
 
Ist doch klar wenn du den in Form3.Edit.Text stehenden Text direkt in den Gerätekontext schreibst, statt über dein Array oder die von mir vorgeschlagen Stringlist gehst.


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