Sources
Delphi Russian Knowledge Base
DRKB - это самая большая и удобная в использовании база знаний по Дельфи в рунете, составленная Виталием Невзоровым

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

01.01.2007

При попытке использовать метод 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;