PDA

Ver la Versión Completa : Aclaración con el PaintBox1


esquerda21
02-06-2003, 09:30:27
Hola ante todo.
Mi problem es el siguiente:

var
Form1: TForm1;
p: tPaintBox;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
p:= tPaintBox.Create(self);
p.parent:= form1;
p.Width:= 300;
p.Height:= 300;
p.visible:= true;
p.Canvas.LineTo(300,300);
end;

La linea hecha con el canvas no se ve. Porque si haciendo esto con un TImage funciona bien y con el Paintbox no?
Decirme que me falsa para que muestre la linea''.
Gracias de antemano.

andres1569
02-06-2003, 13:18:54
Hola:

La sentencia p.Parent := Form1, puede ser una fuente de errores, puesto que sólo es válida cuando has creado una instancia del tipo TForm1 asociada a la variable Form1. ¿Qué ocurre si creas un TForm1 sin asociarlo a Form1? Sucedería que le estarías asignando Form1 a p.Parent (Form1 podría ser nil o incluso algo peor, léase una dirección inexistente). Lo mejor es que pongas p.Parent := Self.

Si el formulario está en AutoCreate no fallará, porque Delphi instancia la variable Form1, pero si no es así, puede que vayan por ahí los tiros de por qué no te aparece la línea ni nada que dibujes en el PaintBox.

A ver si es eso, un saludo