Я использую
Embarcadero® Delphi 10.3 Версия 26.0.36039.7899
TeeChart Standard v2020.29.200113 32-битный VCL
Моя ОС Windows 7 Ultimate ServicePack1
Я помещаю TChart в форму, а затем я добавляю ярлык на TChart. После первого вызова Label1.Canvas.TextExtent диаграмма перестает перерисовываться. Например, после минимизации и максимизации формы вместо содержимого диаграммы я вижу часть фонового окна.
Разрешено ли размещать метку на TChart?
type
TForm1 = class(TForm)
Chart1: TChart;
Button1: TButton;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
ASize: TSize;
begin
ASize := Label1.Canvas.TextExtent(Label1.Caption);
end;
После нажатия на кнопку1 графика перестает перерисовывать.
UPD:
Мы мигрируем из Delphi7 в RAD Studio 10.3. В нашем проекте мы используем нестандартные метки. Метод краски переопределен. Мы рисуем на холсте метки и используем Label.Canvas.TextExtent для вычисления размера текста.
Родительским компонентом меток является TChart.
Пример выше работает правильно в Delphi7, но не в Delphi 10.3.