intenté evitar k dibujase en el evento Paint del picturebox, pq al ejecutar el programa keria k este picturebox estubiera vacio..... pero al final me he visto obligao a usarlo
Código:
bool pulsado;
private void Dibujar(Graphics Dibujo)
{
//Aqui es donde se hace el dibujo dependiendo de ciertos valores introducidos en un textbox
//No he puesto el codigo xq era largo y no era necesario para mi pregunta
}
private void button1_Click(object sender, System.EventArgs e)
{
pulsado = true;
Graphics Dibujo = pictureBox1.CreateGraphics();
Dibujar(Dibujo);
}
private void pictureBox1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
{
if(pulsado)
{
Graphics Dibujo = e.Graphics;
Dibujar(Dibujo);
}
}
k os parece, voy bien? pq funcionar funciona excepto x un problema... :(
kuando se ejecuta el programa no aperece nada (ya k la variable pulsado vale false). Al pulsar el boton aparece el dibujo. Al minimizar este dibujo dibujado x el evento Click del boton se destruye...... de manera k al maximizar o restaurar la ventana, el dibujo se vuelve a dibujar a causa del evento Paint del picturebox............. pero cuando le doy al boton despues de haber restaurado la ventana se me sobreponen los dos dibujos..... el creado por Paint y por Click........
(si no cambio el valor del textbox se ve bien... pq los dos dibujos son exactos y uno encima del otro no se nota... pero al cambiar el valor y hacer click se ve el nuevo dibujo (k es distinto) encima del dibujo del evento Paint) :(
de k manera puedo solucionar esto? como podria destruir el objeto Graphics del evento Paint al hacer Click?
o si no decidme alguna otra manera de hacer lo k pedia inicialmente