AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Benötige Hilfe beim Entwickeln einer Komponente
Thema durchsuchen
Ansicht
Themen-Optionen

Benötige Hilfe beim Entwickeln einer Komponente

Ein Thema von torud · begonnen am 29. Aug 2007 · letzter Beitrag vom 17. Jul 2013
Antwort Antwort
Seite 7 von 13   « Erste     567 89     Letzte »    
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#61

Re: Benötige Hilfe beim Entwickeln einer Komponente

  Alt 6. Sep 2007, 10:47
Versuch es mal mitCanvas.Font.Assign(FFont);
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#62

Re: Benötige Hilfe beim Entwickeln einer Komponente

  Alt 6. Sep 2007, 11:08
Oje da kommt es zu folgender Fehlermeldung:

Format '%p' ungültig oder nicht kompatibel mit Argument.

Probiert hatte ich das auch schon mit Assign(Font);

Nach der Fehlermeldung wird auch nichts mehr gezeichnet...Scheint was schlimmeres zu sein...
Danke
Tom
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#63

Re: Benötige Hilfe beim Entwickeln einer Komponente

  Alt 6. Sep 2007, 11:18
Hä? Hast Du eine Format-Anweisung irgendwo?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#64

Re: Benötige Hilfe beim Entwickeln einer Komponente

  Alt 6. Sep 2007, 11:22
Hier nochmal alles, was ich zum Thema Font in meiner Komponente drin habe:

Delphi-Quellcode:
private
    ...
    FFont: TFont;
  published
    property Font: TFont read FFont write FFont;

constructor TmyPanel.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
  FFont:=TFont.Create;
  ...

destructor TmyPanel.Destroy;
begin
  FFont.Free;
  ...

procedure TmyPanel.Paint;
begin
  ...
  Canvas.Font := Font;
Danke
Tom
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#65

Re: Benötige Hilfe beim Entwickeln einer Komponente

  Alt 6. Sep 2007, 11:38
Delphi-Quellcode:
private
    ...
    FFont: TFont;
  published
    property Font: TFont read FFont write FFont;

constructor TmyPanel.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
  FFont:=TFont.Create;
  ...

destructor TmyPanel.Destroy;
begin
  FFont.Free;
  ...

procedure TmyPanel.Paint;
begin
  ...
  self.Canvas.Font.Assign(FFont);
So sollte es eigentlich gehen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#66

Re: Benötige Hilfe beim Entwickeln einer Komponente

  Alt 6. Sep 2007, 12:09
Hallo torud,

du brauchst keinen eigenen Font creieren. TCanvas besitzt schon einen. Es ist nur so, dass der Font des Controls nicht der Font des Canvas ist (zwei seperate Fonts). Da reicht es aber, wenn du den Font des Controls dem Font des Canvas zuweist.
Delphi-Quellcode:
procedure TMyPanel.Paint;
begin
  Canvas.Font.assign(self.Font);
....
Alle Änderungen auf den Font des Controls (im OI) wirken sich dann automatisch auf den Canvas aus und werden somit beim DrawTest berücksichtigt.

Irgentwo war auch noch eine Methode FontChange oder so. in der ruft man inhereitet auf, damit das Control bei Änderung des Fonts neu gezeichnet wird.

Ob das jetzt mit deiner Textausrichtung geklappt hat, hab ich jetzt nicht so richtig verstanden.

Gruß oki
42
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#67

Re: Benötige Hilfe beim Entwickeln einer Komponente

  Alt 6. Sep 2007, 12:16
Ich hab grad noch mal nachgeschaut, ich glaub das mit FontChange war Käse. Wenn du den Font des Controls änderst, wird glaub ich das Control automatisch neu gezeichnet.

Gruß oki
42
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#68

Re: Benötige Hilfe beim Entwickeln einer Komponente

  Alt 6. Sep 2007, 12:20
FAST!
Aber nur fast, denn wenn ich die Farbe oder die Schriftart ändere bekomme ich wieder ne böse Fehlermeldung.

Zugriffsverletzung bei Adresse 4000596E in Modul 'rtl60.bpl'. Lesen von Adresse 00000001.

Danach wird natürlich auch wieder nix mehr auf dem Canvas gezeichnet...
Danke
Tom
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#69

Re: Benötige Hilfe beim Entwickeln einer Komponente

  Alt 6. Sep 2007, 12:22
Hm, kann ich jetzt also die Variablendeklaration FFont löschen oder was soll ich tun?

Habe gerade mal folgendes im OI getan.

Font aufgeklappt und dort dann alles einzeln geändert => Schriftart, Grösse, Farbe usw. Es hat sich nichts in der Kompo getan. Erst als ich ein Resize ausgelöst habe, wurde es neu gezeichnet und dann war alles schön - ohne Fehlermeldung.

Gehe ich aber den Weg über den FontDialog erhalte ich die Fehlermeldungen:

Format '%p' ungültig oder nicht kompatibel mit Argument.

und danach:
Kein Expandieren möglich

und danach:
Zugriffsverletzung bei Adresse 40005974 in Modul 'rtl60.bpl'. Lesen von Adresse FFFFFFDD.
Danke
Tom
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#70

Re: Benötige Hilfe beim Entwickeln einer Komponente

  Alt 6. Sep 2007, 12:32
Hi,

wie gesagt, keinen eigenen Font creieren. Schmeiss deine Deklaration (property Font ...), FFont, Create und Free komplett raus.

gruß oki
42
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 7 von 13   « Erste     567 89     Letzte »    


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 02:34 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