Programación en C # de preguntas-formularios, cuadros de diálogo y menús-programa para dibujar líneas y círculos

Tema: Complete el programa gráfico: seleccione la fuente a través del menú de fuentes, seleccione el color a través del menú de colores, haga dibujos en el formulario y genere descripciones de texto. El menú Dibujar incluye dos elementos de menú: Dibujar línea y Dibujar círculo.

Los detalles se muestran en la figura: Inserte la descripción de la imagen aquí
Hay varios puntos clave en esta pregunta.
Uno es que si desea transferir la fuente y el color al círculo y la línea que dibuja, este valor debe ser una variable global; de lo contrario, no se puede transferir al
método ToolStripMenuItem_Click_1 () .
La segunda es cómo
crear un objeto gráfico a través del método ToolStripMenuItem_Click_1 () al hacer clic en los menús "círculo" y "línea" para lograr el efecto de dibujo.
Si quieres entender estas preguntas, esta pregunta no es difícil.
Lo pensé durante mucho tiempo y finalmente me di cuenta de la función que se muestra en la figura.
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí
Al hacer clic en otro cuadro de diálogo, el gráfico anterior no se borrará automáticamente
Por último, no sé si alguien ha leído esta publicación de blog. Si alguien la lee, haga clic en como a continuación para informarme. Liberaré el código fuente.

El código fuente está aquí:

using System;
using System.Drawing;
using System.Windows.Forms;

namespace 窗体对话框菜单作业
{
    
    
    public partial class Form1 : Form
    {
    
    
        public Form1()
        {
    
    
            InitializeComponent();
        }

        Color mycolor = new Color();
        Font myfont = new Font("宋体", 16, FontStyle.Regular);

        private void 画线ToolStripMenuItem_Click(object sender, EventArgs e)
        {
    
    
            Graphics g = this.CreateGraphics();
            Pen mypen = new Pen(mycolor);
            SolidBrush mybrush = new SolidBrush(mycolor);
            g.DrawLine(mypen, 0, 0, 500, 500);
            g.DrawString("线", myfont, mybrush, 80, 80);
        }

        private void 画圆ToolStripMenuItem_Click_1(object sender, EventArgs e)
        {
    
    
            Graphics g = this.CreateGraphics();
            Pen mypen = new Pen(mycolor);
            SolidBrush mybrush = new SolidBrush(mycolor);
            g.DrawEllipse(mypen, 100, 100, 100, 100);
            g.DrawString("圆", myfont, mybrush, 100, 100);
        }

        private void 颜色ToolStripMenuItem_Click(object sender, EventArgs e)
        {
    
    
            ColorDialog cd = new ColorDialog();
            if (cd.ShowDialog() == DialogResult.OK)
            {
    
    
                mycolor = cd.Color;
            }
            else
            {
    
    
                mycolor = Color.Black;
            }
        }

        private void 字体ToolStripMenuItem_Click(object sender, EventArgs e)
        {
    
    
            FontDialog fd = new FontDialog();
            if (fd.ShowDialog() == DialogResult.OK)
            {
    
    
                Font myfont = fd.Font;
            }
        }
    }
}

Vea esto, ¡me gusta QAQ! ! ¡Es demasiado difícil para los recién llegados ser originales! !

Supongo que te gusta

Origin blog.csdn.net/NikoHsu/article/details/105770603
Recomendado
Clasificación