Crear un programa de paint o pintar con C# .net es relativamente facil, vamos a agregar las funciones basicas de pintar y borrar.
Mas adelante en otros posts vamos a ir agregando mas funciones.
Explicación
Para empezar tenemos que crear un proyecto de Windows Forms en C# .NET y vamos a agregar 2 botones (Pintar y Borrar).
Para Dibujar vamos a usar el propio espacio de la aplicacion, por lo que vamos a colocar los botones ya sea en la esquina superior o en la esquina inferior, como se muestra en la siguiente imagen es como lo hice.
Pintar es button1 y Borrar es button2.
Tambien vamos a usar 3 variables booleanas pintar, borrar y presionado.
Usaremos los eventos del mouse MouseUp y MouseDoen para cambiar el estado de las variable booleana presionado.
Al presionar “Pintar” o el button1 haremos lo siguiente: variable pintar = true y variable borrar = false.
Al presionar “Borrar” o el button2 haremos lo siguiente: variable borrar = true y variable pintar = false.
Y al mover el mouse sobre la ventana usaremos el evento MouseMove y dentro de las funciones vamos a verificar si las variables booleanas estan en true y dependiendo de las variables vamos a pintar o a borrar, a continuacion el codigo.
Código
Este es el código de todas las funciones, hay cosas que tenemos que hacer en el IDE del Visual Studio por ejemplo, ponerle nombre a los botones, cambiar el fondo de la ventana a color Blanco, crear las funciones de los eventos MouseDown, MouseUp y MouseMove, entre otros detalles extra que ustedes quieran hacer.
// Variables Booleanas
public bool pintar = false;
public bool borrar = false;
public bool presionado = false;
// Al presionar el boton "Pintar"
private void button1_Click(object sender, EventArgs e)
{
pintar = true;
borrar = false;
}
// AL presionar el boton "Borrar"
private void button2_Click(object sender, EventArgs e)
{
borrar = true;
pintar = false;
}
//Al presionar el click del Mouse
private void Form1_MouseDown(object sender, MouseEventArgs e)
{
presionado = true;
}
// Al soltar/ dejar de presionar el click del Mouse
private void Form1_MouseUp(object sender, MouseEventArgs e)
{
presionado = false;
}
// Al mover el mouse
private void Form1_MouseMove(object sender, MouseEventArgs e)
{
// Si se presiono el boton Pintar el Esta presionado el click del mouse "Pintamos"
if(presionado && pintar)
{
Graphics grafico = CreateGraphics();
grafico.FillEllipse(new SolidBrush(Color.Black ), e.X, e.Y,4,4);
grafico.Dispose();
}else if(presionado && borrar) // Si se presiono el boton Borrar el Esta presionado el click del mouse "Borramos"
{
Graphics grafico = CreateGraphics();
grafico.FillEllipse(new SolidBrush(Color.White), e.X, e.Y, 20, 20);
grafico.Dispose();
}
}
Y listo si todo salio bien ya pueden pintar sobre el espacio de la ventana.
Podemos observar que para pintar pintamos de Color negro y para Borrar de color blanco … con un poco mas de variables y botones podemos cambiar para poder pintar de cualquier otro color, eso lo veremos mas adelante.
Descargar
A continuación les dejo, como siempre, el proyecto completo para que ustedes lo usen o lo modifiquen.
Link: https://drive.google.com/file/d/13gFho44cAmrqIGD7cnrBOW73VH2FXDXS/view
Y ahora aprobar y seguir programando.
A ustedes que les parece? Que otras funciones recomiendan ? Comenten.