![]() |
schriftarten durchschalten
'nabend!
ich suche eine methode, die es mir ermöglicht die mir zur verfügung stehenden schriftarten durchzuschalten, also speziell: einen text in jeder vorhanden schriftart auszugeben. wenn da wer was hätte, dann wär ich für heute abend glückseelig :angel: danke schonmal im voraus! mfg, max :cyclops: |
Re: schriftarten durchschalten
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin Listbox1.Items:= screen.Fonts; end; |
Re: schriftarten durchschalten
??? also so wie ich das hier gebastelt hab gibt mir das programm jetzt die liste aller schriftarten aus... sieht auch so aus als sollte der befehl das tun...
ich weiß nich, ob ich's falsch benutzt hab oder ob ich mich nur blöd ausgedrückt hab: also, beispiel: ich möchte den buchstaben 'a' in jeder vorhanden schriftart darstellen. am liebsten wär mir dabei im moment ne for-to-do schleife, mit einer laufvariable, die die schriftart festlegt. dann soll also die schleife durchlaufen, vom schema her etwa so:
Delphi-Quellcode:
for i:=1 to x do
begin listbox1.font:=listbox1.font+1; //natürrlich schwachsinn, aber vom prinzip her listbox1.items.add('a'); end; |
Re: schriftarten durchschalten
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var i: integer; begin if Listbox1.Items.Count> 0 then for i:= 0 to Pred(Listbox1.Items.Count) do begin canvas.Font.Name:= Listbox1.Items.Strings[i]; canvas.TextOut(10,i* 16, 'Hallo'); end; end; |
Re: schriftarten durchschalten
Hi,
ich habe das Problem mal so gelösst.
Delphi-Quellcode:
PS: Ich hoffe ich konnte dir weiterhelfen. Und Herzlich Wilkommen erst mal.
procedure TForm1.Button1Click(Sender: TObject);
var s : String; i : Integer; begin s:='Dein Text kommt hier rein'; for i:=1 to Screen.Fonts.Count - 1 do begin RichEdit1.Lines.Add(s); RichEdit1.SelAttributes.Name:=Screen.Fonts.Strings[i]; end; end; MFG Christian18 |
Re: schriftarten durchschalten
okay, also christians idee find ich recht nachvollziehbar und die müsste ja meiner und seiner meinung nach auch laufen, aber iwie ändert sich die schriftart bei mir nich... immer das gleich, und ich hab auch 'n RichEdit benutzt.
den weg von bitsetter versteh ich fast xD wird da die schriftart nachträglich geändert?? sehr merkwürdig! |
Re: schriftarten durchschalten
Das 2. Beispiel von mir bezog sich auf das 1.
Delphi-Quellcode:
EDIT: Fontname in der Listbox wurde hinzugefügt
//im OI das Ivent onDrawItem für Listbox1 durch doppelklicken auswählen. //Delphi erstellt dann automatisch das Ivent, da schreibst du dann den Code rein.
procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState); begin with Control as TListBox do begin if Index< screen.Fonts.Count then begin Canvas.FillRect(Rect); canvas.Font.Name:= screen.Fonts.Strings[Index]; Canvas.TextOut(rect.Left, rect.Top,'a'); canvas.Font.Name:= 'Arial'; Canvas.TextOut(rect.Left+ 10, rect.Top, ' = '+ screen.Fonts.Strings[Index]); end; end; end; //im OI das Ivent onCreate für Form1 durch doppelklicken auswählen. procedure TForm1.FormCreate(Sender: TObject); begin Listbox1.Items:= screen.Fonts; Listbox1.Style:= lbOwnerDrawFixed; end; EDIT: jetzt auch noch mit Beschreibung |
Re: schriftarten durchschalten
:wiejetzt: sorry, bitsetter, aber um das zu verstehn sind meine kenntnisse glaub ich zu öberflächlich... :pale:
|
Re: schriftarten durchschalten
Liste der Anhänge anzeigen (Anzahl: 1)
Hier ist eine Demo:
|
Re: schriftarten durchschalten
mkay,... also iwie scheint das ja zu funzen :gruebel: :gruebel: :gruebel: :gruebel: :gruebel:
danke auf jeden fall, vielleicht begreif ich das auch iwann noch :wink: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:32 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-2025 by Thomas Breitkreuz