![]() |
Delphi-Version: XE4
VCL-Funktion wird nicht erkannt
Hallo,
obwohl ich in der Uses-Klausel meines VCL-Programms Vcl.Graphics stehen habe, reklamiert der Compiler Undeklarierter Bezeichner: 'TextWidth'. Die Delphi-Hilfe besagt, dass TextWidth in Vcl.Graphics definiert ist.
Code:
Auch wenn ich TextWidth('99') später im Code verwende, kommt dort die gleiche Fehlermeldung.
uses
ShellAPI, Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, System.StrUtils, System.DateUtils, System.Character, System.Math, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.Menus, Vcl.ExtCtrls, Vcl.ExtDlgs, Vcl.ComCtrls, Vcl.StdCtrls, Winapi.WinInet; ... TMainForm = class(TForm) ... private ... const ... len_ltick = 8; // long tick border_left = len_ltick+TextWidth('99')+2; ... Wie kann ich sonst noch die Breite von Text auf einer Grafik ermitteln? Gruß Nikodel |
AW: VCL-Funktion wird nicht erkannt
TextWidth sollte eine Methode des jeweiligen Canvas sein. Woher soll es sonst Textgröße/Schriftart/etc kennen?
|
AW: VCL-Funktion wird nicht erkannt
Wie CCRude schon schrieb, ist es eine Methode des Canvas-Objekts.
Selbst, wenn das nicht so wäre, wird es nicht funktionieren, damit eine Konstante zu definieren. Die Methode TextWidth ist abhängig von der Schriftart. Dadurch ist es kein Konstantenausdruck mehr. |
AW: VCL-Funktion wird nicht erkannt
Hilft
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:34 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