C#圆形头像框制作并从数据库读取

 更新时间:2021年08月25日 09:48:11   作者:小马的黄金棺材板  
本文主要介绍了C#圆形头像框制作并从数据库读取,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

现在只要是有关头像的框基本都是圆形的了,C#提供的PictureBox控键默认情况下是方形的非常大的影响美观

在这里插入图片描述

PictureBox默认情况下

请添加图片描述

比起上面的还是有一点不太好看的…

使用C#提供的类进行圆形:

工具箱拉出PictureBox

请添加图片描述

设置图片的显示模式为ZOOM

请添加图片描述

特别注意:
框的比例必须为一样不然会变椭圆的

请添加图片描述

窗体加载时:

 pictureBox1.Image = Image.FromFile(@"C:\Users\Administrator\Desktop\1.png");

为了方便演示,在窗口加载的时候加载出图片

请添加图片描述

图片加载出来后然后,把框框变圆的

 GraphicsPath gp = new GraphicsPath();
    gp.AddEllipse(pictureBox1.ClientRectangle);
Region region = new Region(gp);
  pictureBox1.Region = region;//赋值
 gp.Dispose();//释放资源
  region.Dispose();//释放资源

只有简单的几行

效果图:

请添加图片描述

一下美观了很多

接下来演示从数据库读取图片到框框上:

同样也是,写在窗口的加载事件

GraphicsPath gp = new GraphicsPath();

            gp.AddEllipse(pictureBox1.ClientRectangle);

            Region region = new Region(gp);

            pictureBox1.Region = region;

            gp.Dispose();

            region.Dispose();



            CheckForIllegalCrossThreadCalls = false;
            username.Text = 登录界面.jmuser;
            Thread th = new Thread(a);
            th.IsBackground = true;
            th.Start();
            us = username.Text;

            首页 form = new 首页();
            form.TopLevel = false;
            form.Parent = panel1;
            panel1.Controls.Add(form);//将子窗体载入panel            
            form.Show();

            SqlConnectionStringBuilder bu = new SqlConnectionStringBuilder();

            bu.Password = "0";
            bu.UserID = "0";
            bu.DataSource = "0-0";
            bu.InitialCatalog = "0";
            SqlConnection b = new SqlConnection(bu.ToString());
            string str = "select * from  user1  where  username ='" + 登录成功界面.us + "'";
            b.Open();

            SqlCommand c = new SqlCommand(str, b);

            SqlDataReader d = c.ExecuteReader();

            while (d.Read())
            {
                //  label2.Text = d["userid"].ToString();
                string s = d["头像"].ToString();
                byte[] imageBytes = Convert.FromBase64String(s);
                MemoryStream memoryStream = new MemoryStream(imageBytes, 0, imageBytes.Length);
                memoryStream.Write(imageBytes, 0, imageBytes.Length);
                Image image = Image.FromStream(memoryStream);
                this.pictureBox1.SizeMode = PictureBoxSizeMode.Zoom;
                this.pictureBox1.Image = image;
            }
      }

效果图:

在这里插入图片描述

图片是从数据库读取的,并不是本地上传的!!

到此这篇关于C#圆形头像框制作并从数据库读取的文章就介绍到这了,更多相关C#圆形头像框制作 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C#获取系统当前IE版本号

    C#获取系统当前IE版本号

    这篇文章主要为大家详细介绍了C#获取系统当前IE版本号,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-12-12
  • C#使用IronPython调用Python的实现

    C#使用IronPython调用Python的实现

    本文主要介绍了C#使用IronPython调用Python的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • C#对XML文件的各种操作实现方法

    C#对XML文件的各种操作实现方法

    C#对XML文件的各种操作实现方法,需要的朋友可以参考一下
    2013-04-04
  • 详解Winform里面的缓存使用

    详解Winform里面的缓存使用

    这篇文章主要介绍了Winform里面的缓存使用,有需要的朋友可以参考一下
    2014-01-01
  • 深入理解C#中new、override、virtual关键字的区别

    深入理解C#中new、override、virtual关键字的区别

    下面小编就为大家带来一篇深入理解C#中new、override、virtual关键字的区别。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • C# WPF调用QT窗口的方法

    C# WPF调用QT窗口的方法

    本文主要介绍了C# WPF调用QT窗口的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • C#实现接收QQ邮件的示例代码

    C#实现接收QQ邮件的示例代码

    这篇文章主要为大家详细介绍了C#如何使用pop协议来实现一下接收QQ邮件的功能,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一下
    2022-08-08
  • C#中缓存的基本使用方法

    C#中缓存的基本使用方法

    项目开发过程中缓存的应用到处可见,下面这篇文章主要给大家介绍了关于C#中缓存的基本使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-09-09
  • C#中GraphicsPath的AddString方法用法实例

    C#中GraphicsPath的AddString方法用法实例

    这篇文章主要介绍了C#中GraphicsPath的AddString方法用法,实例分析了AddString方法添加字符串的相关使用技巧,需要的朋友可以参考下
    2015-06-06
  • C# 中的 is 真的是越来越强大越来越语义化(推荐)

    C# 中的 is 真的是越来越强大越来越语义化(推荐)

    这篇文章主要介绍了C# 中的 is 真的是越来越强大越来越语义化,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09

最新评论