您好,登錄后才能下訂單哦!
這篇文章主要講解了“C#制作圓形頭像框并從數據庫讀取圖片”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“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#制作圓形頭像框并從數據庫讀取圖片這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。