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

Материал из DRKB

Проблемы с 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;



ID: 02353