Delphi - база знаний

       

Проблемы с TCanvas.StretchDraw при рисовании иконок


Проблемы с TCanvas.StretchDraw при рисовании иконок




При попытке использовать метод TCanvas.StretchDraw чтобы нарисовать иконку
увеличенной ее размер не изменяется. Что делать?

Иконки всегда рисуются размером принятым в системе по умолчанию. Чтобы показать увеличенный вид иконки скоприуйте ее на bitmap, а зате используйте метод TCanvas.StretchDraw.

procedure TForm1.Button1Click(Sender: TObject);
var
  TheBitmap: TBitmap;
begin
  TheBitmap := TBitmap.Create;
  TheBitmap.Width := Application.Icon.Width;
  TheBitmap.Height := Application.Icon.Height;
  TheBitmap.Canvas.Draw(0, 0, Application.Icon);
  Form1.Canvas.StretchDraw(Rect(0, 0, TheBitmap.Width * 3, TheBitmap.Height * 3),
    TheBitmap);
  TheBitmap.Free;
end;



Содержание раздела