Ir al contenido


Foto

Dibujar dentro de un scrollbox utilizando canvas


  • Por favor identifícate para responder
No hay respuestas en este tema

#1 eduarcol

eduarcol

    Advanced Member

  • Administrador
  • 4.483 mensajes
  • LocationVenezuela

Escrito 11 noviembre 2009 - 03:26

Saludos,

Quiero dibujar en un ScrollBox utilizando el canvas, dependiendo del tamaño de datos a incluir este se puede alargar y necesito precisamente la capacidad de desplazamiento que me ofrece el scrollbox.

Ahora mi primera duda:  El scrollbox no se puede manejar con el canvas por lo que tengo que crear un PaintBox dentro de el para que funcione.

Por defecto el paintbox debe ser del mismo tamaño del scrollbox para que no muestre las barras de desplazamiento, hasta alli vamos bien.  El problema esta que si igualo heigth y width de ambos controles me salen las barras, esto lo arreglo quitandole 10 a cada valor.  Pero si hago esto no se me dibuja nada :(

Alguien sabe que puede estar pasando?



delphi
  1. var
  2.   Fondo: TPaintbox;
  3.   i: Integer;
  4. begin
  5.   //Si existe un componente en fondo lo borra
  6.   I := 0;
  7.   while Contenedor.ControlCount > 0 do
  8.   begin
  9.       Contenedor.Controls[I].Destroy;
  10.   end;
  11.   //Crea el lienzo donde se dibujara el grafico
  12.   Fondo := TPaintbox.Create(Contenedor);
  13.   Fondo.Parent := Contenedor;
  14.   Fondo.Top := 0;
  15.   Fondo.Left := 0;
  16.   Fondo.Height := Contenedor.Height - 4;
  17.   Fondo.Width  := Contenedor.Width - 4;
  18.   //Configura el tipo de las lineas
  19.   Fondo.Canvas.Pen.Color := clBlack;
  20.   Fondo.Canvas.Pen.Style := psSolid;
  21.   //Comienza a dibujar en las posiciones
  22.   Fondo.Canvas.MoveTo(20, 20);
  23.   Fondo.Canvas.LineTo(100, Fondo.Height- 20);
  24. end;


  • 0




IP.Board spam blocked by CleanTalk.