Menus - desenhando canvas

Top  Previous  Next

 

procedure TForm1.Opcao31MeasureItem(Sender: TObject; ACanvas: TCanvas;

  var Width, Height: Integer);

begin

  if TMenuItem(Sender).Tag = 1 then

  begin

    Height := 20;

    Width  := 50;

  end

  else

  begin

    Height := 50;

    Width  := 50;

  end

end;

 

procedure TForm1.Opcao11DrawItem(Sender: TObject; ACanvas: TCanvas;

  ARect: TRect; Selected: Boolean);

begin

  if Selected then

    ACanvas.Brush.Color := clYellow

  else

    ACanvas.Brush.Color := clMenu;

  ACanvas.FillRect(ARect);

  ACanvas.Brush.Color := clRed;

  InflateRect(ARect,-5,-5);

  ACanvas.Rectangle(ARect.Left, ARect.Top, ARect.Right, ARect.Bottom);

end;

 

procedure TForm1.Opcao21DrawItem(Sender: TObject; ACanvas: TCanvas;

  ARect: TRect; Selected: Boolean);

begin

  if Selected then

    ACanvas.Brush.Color := clRed

  else

    ACanvas.Brush.Color := clMenu;

  ACanvas.FillRect(ARect);

 

  ACanvas.Draw(ARect.Left + 10, ARect.Top + 10, Image1.Picture.Bitmap);

end;