![]() |
Delphi-Version: 2009
TextRect -> Es gibt keine überladene Version ...
Hi,
ich will einen Text über Canvas.TextRect ausgeben, aber das funktioniert nicht. Ich hab zwar ein ![]()
Delphi-Quellcode:
Es kommt der Fehler:
procedure TMyDocumentLabel.Paint(Canvas: TCanvas; y0: integer);
var R:TRect; s:AnsiString; t:TTextFormat; begin //r:=rect(Left*scale,y0+Top*scale,(Left+width)*scale,y0+(Top+Height)*scale); s:='asd'; r:=rect(10,12,130,150); T:=[tfCenter]; Canvas.TextRect(R,S,[tfCenter]); // Canvas.TextRect(R,s,T); end; Zitat:
Es ist doch im Prinzip genau das selbe, wie auch in dem anderen Thema steht, oder?? Was mache ich falsch? Danke schonmal, Tobi. |
AW: TextRect -> Es gibt keine überladene Version ...
Welcher Canvas ist denn hier gemeint? Der Parameter oder ggf. die Canvas-Eigenschaft der Klasse?
|
AW: TextRect -> Es gibt keine überladene Version ...
Das Canvas, was oben als Parameter steht.
Die Klasse hat kein eigenes. |
AW: TextRect -> Es gibt keine überladene Version ...
Ich glaube zwar nicht wirklich, dass es etwas bringt, aber benenne den Parameter doch einmal um (aCanvas z.B.).
|
AW: TextRect -> Es gibt keine überladene Version ...
Bringt auch nix...
Aber zu dem anderen gibts doch eigentlich keinen unterschied, oder?? Also es sind Variablen-Parameter und Tippfehler hab ich auch nicht gefungen... |
AW: TextRect -> Es gibt keine überladene Version ...
Im Moment seh ich jetzt auch nicht, was die Ursache sein könnte. Du hast aber keine eigene TCanvas-Klasse deklariert, oder?
|
AW: TextRect -> Es gibt keine überladene Version ...
Nee, das ist ein Canvas, was von einer Paintbox kommt und über verschiedene Proceduren immer weiter gereicht wird, das dürfte doch aber nichts ändern, oder?
|
AW: TextRect -> Es gibt keine überladene Version ...
Ich habe gerade mal das hier ausprobiert:
Delphi-Quellcode:
Keine Probleme, anscheinend fehlt mir Quelltext. Du könntest das Projekt ja mal zippen und anhängen, vielleicht sieht man da mehr.
procedure TForm1.DoPaint(aCanvas: TCanvas);
var R:TRect; s:AnsiString; t:TTextFormat; begin s:='asd'; r:=rect(10,12,130,150); T:=[tfCenter]; aCanvas.TextRect(R,S,[tfCenter]); end; procedure TForm1.FormPaint(Sender: TObject); begin DoPaint(Canvas); end; |
AW: TextRect -> Es gibt keine überladene Version ...
Welches TextRect wird denn angeboten, bzw. was zeigt denn die IDE für mögliche Parametertypen an?
Und sind die Typen auch die Selben? Nicht daß die Parameter andere Typen verlangen, als deine Variablen es sind. (gleichnamige Typen aus anderen Units) |
AW: TextRect -> Es gibt keine überladene Version ...
Liste der Anhänge anzeigen (Anzahl: 1)
Also die Parameter stimmen eigentlich, das hab ich mehrmals kontrolliert.
Hier mal das Projekt |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:42 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