¿Cómo haría una aplicación de estilo de pintura en Visual Basic?

Veo que esta pregunta se hizo hace más de dos años y, por desgracia, nunca se respondió. Cuando estaba creando aplicaciones VB a un ritmo de dos o tres por semana, uno de mis lugares favoritos era la aplicación Paint style.

Esencialmente, puede dibujar en un formulario (pero generalmente es mejor usar un PictureBox). Uno de mis diseños favoritos de KISS (que sea simple) fue un formulario de ventana negra maximizada con los controles de formulario eliminados.

Para mantener la interfaz completamente negra, utilicé un pequeño control de Etiqueta transparente en la esquina superior izquierda para abrir un cuadro de opción de selección de color cuando el mouse pasó sobre él, y los tamaños de pincel se controlaron con las teclas numéricas.

En caso de que no lo sepas, Me en VB se refiere al formulario actual. Configurar un color es tan simple como usar el comando global, Point () para configurar el color de su pincel o lápiz

Private Sub ColorPickerBox_MouseDown (Botón como entero, Mayús como entero, X como único, Y como único)
pencolor = Punto (X, Y)
Me.ForeColor = pencolor
End Sub

y el siguiente código para seleccionar el tamaño del pincel con los números del teclado:

Private Sub Form_KeyDown (KeyCode As Integer, Shift As Integer)
Seleccionar caso Código clave
Caso 49 a 57: Me.DrawWidth = KeyCode – 47
Seleccionar final
End Sub

Siempre uso las declaraciones Select / Case cuando construyo aplicaciones VB como esta porque es muy fácil volver a su código más tarde y agregar funciones a otras teclas.

El dibujo / pintura real en esta aplicación es probablemente la cosa más simple de todas. Simplemente use la función de color PSet (x, y) en los eventos MouseDown y MouseMove:

Private Sub Form_MouseDown (botón como entero, Shift como entero, X como único, Y como único)
Seleccionar botón de caso
Caso 1: PSet (X, Y), pencolor
Caso 2: PSet (X, Y), otro color
Seleccionar final
End Sub

Private Sub Form_MouseMove (botón como entero, Shift como entero, X como único, Y como único)
Seleccionar botón de caso
Caso 1: PSet (X, Y), pencolor
Caso 2: PSet (X, Y), otro color
Seleccionar final
End Sub

En VB “Botón 1” es el botón izquierdo, “Botón 2” es el botón derecho. Si el color arg se omite de la función PSet (), el color de dibujo vuelve al valor actual de la propiedad Me.ForeColor.

Esto lo ayudará a comenzar a hacer garabatos de forma libre, pero hay un número ilimitado de otras cosas que puede hacer para agregar sus propias funciones personalizadas como formas, líneas y degradados y lo que sea lo suficientemente creativo como para soñar.

¡Que te diviertas! —Pero si te vuelves adicto, no me culpes.

Esa sería una muy buena práctica para usted si no conoce mucho VB. Hay muchos recursos en Internet de código abierto que puede estudiar y cambiar para satisfacer sus propias necesidades.