AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

font im memo?

Ein Thema von tom_po · begonnen am 8. Feb 2006 · letzter Beitrag vom 9. Feb 2006
Antwort Antwort
Seite 1 von 2  1 2      
tom_po

Registriert seit: 5. Feb 2006
137 Beiträge
 
Delphi 7 Enterprise
 
#1

font im memo?

  Alt 8. Feb 2006, 23:45
wie kann ich eine memo mit meiner font-komponente definieren?

benutze diesen Code, aber ohne Erfolg:
Delphi-Quellcode:
procedure Takn.Label5Click(Sender: TObject);
var i: integer;
begin
fontdialog1.Execute;
FontDialog1.Font := memo1.Font;
  for i := 0 to (memo1.ControlCount - 1) do
    if (memo1.Controls[i] is TButton) then
      (memo1.Controls[i] as TButton).Font :=
        FontDialog1.Font
end;
danach benutze ich eine tnpdf-komponente zur Darstellung im pdf-format. Aber der Font ändert sich nicht, wie definiert!!
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#2

Re: font im memo?

  Alt 9. Feb 2006, 00:11
Ist das Memo ein Standard-Memo von Delphi ?
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
Benutzerbild von Der Jan
Der Jan

Registriert seit: 22. Dez 2005
289 Beiträge
 
Delphi XE7 Ultimate
 
#3

Re: font im memo?

  Alt 9. Feb 2006, 08:03
Zitat von tom_po:
benutze diesen Code, aber ohne Erfolg:
Delphi-Quellcode:

fontdialog1.Execute;
FontDialog1.Font := memo1.Font;
Wie soll das auch gehen? Vertausch mal die beiden Zeilen. Könnte helfen....
Gruß, Jan
  Mit Zitat antworten Zitat
tom_po

Registriert seit: 5. Feb 2006
137 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: font im memo?

  Alt 9. Feb 2006, 09:04
na klar, jetzt geht's, danke. Da stand mir irgendeiner auf der Leitung...
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#5

Re: font im memo?

  Alt 9. Feb 2006, 09:12
Hallo Leute - besser so:

Delphi-Quellcode:
with FontDialog do
begin
  Font.Assign(Memo.Font);
  if Execute then
    Memo.Font.Assign(Font);
end;
Grüße vom marabu
  Mit Zitat antworten Zitat
tom_po

Registriert seit: 5. Feb 2006
137 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: font im memo?

  Alt 9. Feb 2006, 09:40
danke wiedermal, marabu, hab's jetzt so:
Delphi-Quellcode:
procedure Takn.Label5Click(Sender: TObject);
  begin
   with FontDialog1 do
    begin
    Font.Assign(Memo1.Font);
    if Execute then
    Memo1.Font.Assign(Font);
    end;
  end;
aber sag mal, wieso ist das so besser?

ich stelle ja das pdf-file mit meiner tnpdf-Komponente dar, wenn ich aber jetzt den Font aus meiner Memo übernehmen will gibt's ne Fehlermeldung:

Delphi-Quellcode:
//printpdf1.Font.Name:=pohelvetica;
//printPDF1.Font.Size:=20;
printPDF1.Font := memo1.font;
printPDF1.MemoOut(30,940, Memo1);
Message beim Kompilieren:
[Fehler] AknUni.pas(263): Inkompatible Typen: 'TPDFFont' und 'TFont'

der Font-Teil des tnpdf sieht so aus:
Delphi-Quellcode:
Type TPDFOrientation = (poPortrait, poLandscape);
Type TPDFBrushStyle = (poSolid, poDashed, poBeveled, poInset, poUnderline);
Type TPDFFontName = (poHelvetica,poHelveticaBold,poHelveticaOblique,
poHelveticaBoldOblique,poCourier,poCourierBold,poCourierOblique,
poCourierBoldOblique,poTimesRoman,poTimesBold,poTimesItalic,
poTimesBoldItalic,poSymbol,poZapfDingbats);

type TPDFFont = class
public
Name:TPDFFontName;
Size:Integer;
end;
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#7

Re: font im memo?

  Alt 9. Feb 2006, 11:23
Ich wollte dich darauf hinweisen, dass du vielleicht auf das Abbrechen des FontDialogs reagieren solltest, anstatt den Wunsch des Benutzers einfach zu ignorieren.

Die Zuweisung von TFont an TPDFFont muss fehlschlagen. Den Grund sagt dir der Compiler - die beiden sind nicht kompatibel. Allerdings würdest du bei Kompatibilität "besser" so vorgehen:

printPDF1.Font.Assign(memo1.font); Du darfst nicht vergessen, dass mit dem assignment operator mitunter nur Zeiger kopiert werden - ein deep copy (alle Felder und Strukturen) erreichst du nur mit Assign().

marabu
  Mit Zitat antworten Zitat
Benutzerbild von -=wWw=- AK23
-=wWw=- AK23

Registriert seit: 8. Feb 2006
51 Beiträge
 
Delphi 2006 Architect
 
#8

Re: font im memo?

  Alt 9. Feb 2006, 14:05
somit hättest du den gesamten Text in einer einzigen
Schriftart.

Ich hab da so eine Idee, ich schmeiß mal delphi an
Niklas
"Den Menschen trennt nur eine Sache von den Tieren: Menschen sind bessere Schauspieler."
  Mit Zitat antworten Zitat
Benutzerbild von -=wWw=- AK23
-=wWw=- AK23

Registriert seit: 8. Feb 2006
51 Beiträge
 
Delphi 2006 Architect
 
#9

Re: font im memo?

  Alt 9. Feb 2006, 14:13
Mist. Unkompatible typen.

Naja, wie auch immer, ich würde dir empfehlen auf Richedit umzusteigen.
Jetzt kenn ich die PDF Komponente nicht die du benutzt, aber ich denke das das
funktionieren sollte.

So, hier noch mal mein falscher Denkansatz:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
try
  fontdialog1.Execute;
finally
  richedit1.SelAttributes.Charset:=fontdialog1.Font;
end;
end;
jetzt muss man noch dazu sagen, dass meine delphi-fähigkeiten äußerst eingeschränkt sind.
da gibt es sicher elegantere (und funktionierende) lösungen.
Niklas
"Den Menschen trennt nur eine Sache von den Tieren: Menschen sind bessere Schauspieler."
  Mit Zitat antworten Zitat
tom_po

Registriert seit: 5. Feb 2006
137 Beiträge
 
Delphi 7 Enterprise
 
#10

Re: font im memo?

  Alt 9. Feb 2006, 15:34
marabu:

printPDF1.Font.Assign(memo1.font);

assign geht bei mir nicht, wird bei printpdf1.font.??? nicht gefunden, bzw. angezeigt!

was meinst du zum Vorschlag von Niklas (danke noch für dein Input) betr. der Verwendung von richedit anstatt von Memo?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:24 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