Мужики, есть одна небольшная проблема, даже сказать, головная боль.
есть O: TShape;
Создаю экземпляр. Пытаюсь вывести текст при помощи Canvas.TextOut(0,0,'123456');
При первой попытке всё выводится. Потом... Изменяю размер при помощи Width := 200;
пытаюсь вывести текст ещё раз - уже не получается. Причём видно, что он прорисовывается, но мельком, почти незаметно, потом исчезает.
Вот код:
var O: TShape;
procedure TForm1.CreateObj;
begin
O := TShape.Create(Self);
O.Parent := Form1;
O.Visible := True;
end;
procedure TForm1.DelObj;
begin
O.Free;
end;
procedure TForm1.DrawText1;
begin
O.Canvas.TextOut(0,0,'12345');
end;
{пока что всё нормально}
procedure TForm1.DrawText2;
begin
O.Width := 200;
O.Height := 200;
O.Canvas.TextOut(0,30,'67890');
//Invalidate;
//Refresh;
//Canvas.Refresh;
end;
{теперь нет ни первой ни второй надписи}
Пробывал в DrawText2 в конце ставить три методы, что закомменчены, ноль результат.
Видимо что то не учёл, кто нибудь сталкивался?