Ver Mensaje Individual
  #6  
Antiguo 16-02-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Carlos.

Usando el evento OnPaint, como te sugiere Al, tendría que funcionar correctamente.

Ejemplo:
Código Delphi [-]
...
uses ShellApi;

procedure TForm1.DrawLines;
begin
  with Canvas do
  begin
    Pen.Width:= 3;
    MoveTo(40,100);
    LineTo(300,50);
    MoveTo(60,50);
    LineTo(350,90);
  end;
end;

procedure TForm1.FormPaint(Sender: TObject);
begin
  DrawLines
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShellExecute(Application.Handle, 'open', 'notepad.exe', nil, nil, SW_SHOWNORMAL);
end;
En el ejemplo, podrás comprobar que desplazando el notepad sobre las líneas del formulario, no se percibe el borrado de las mismas. En cambio si desactivas el llamado a DrawLines en el evento OnPaint (// DrawLines), el notepad se comporta como si fuese una goma de borrar.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita