WinFrom验证码的实现

来源:互联网 发布:snmptrap协议端口号 编辑:程序博客网 时间:2024/06/10 00:21

1.新建C# WinForm程序

2.添加PictureBox控件

3.设置属性


4.代码片段

public partial class Form1 : Form    {        public Form1()        {            InitializeComponent();        }        //点击更换验证码        private void pictureBox1_Click(object sender, EventArgs e)        {            Random r=new Random();            string str = null;            for (int i = 0; i < 5; i++)            {                int rNumber = r.Next(0, 10);                str += rNumber;            }            //MessageBox.Show(str);            //创建GDI对象            Bitmap bmp =new Bitmap(150,40);            Graphics g = Graphics.FromImage(bmp);            for (int i = 0; i < 5; i++)            {                Point p=new Point(i*20,0);                string[] fonts = {"微软雅黑", "宋体", "隶属", "仿宋","黑体"};                Color[] colors = {Color.Yellow, Color.Red,Color.Blue, Color.Black, Color.Green};                g.DrawString(str[i].ToString(),new Font(fonts[r.Next(0,5)],20,FontStyle.Bold),new SolidBrush(colors[r.Next(0,5)]),p);            }            for (int i = 0; i < 20; i++)            {                Point p1=new Point(r.Next(0,bmp.Width),r.Next(0,bmp.Height));                Point p2=new Point(r.Next(0,bmp.Width),r.Next(0,bmp.Height));                g.DrawLine(new Pen(Brushes.Green), p1, p2);            }            for (int i = 0; i < 500; i++)            {                Point p = new Point(r.Next(0, bmp.Width), r.Next(0, bmp.Height));                bmp.SetPixel(p.X,p.Y,Color.Black);            }            //将图片向前到PictureBox中            pictureBox1.Image = bmp;        }    }


5.结果




原创粉丝点击