VB图片显示方式示例分享
VB 里的图片显示方式,其实还挺多的,而且各有优势。如果你是做桌面应用或者工具类的小项目,建议你了解下这几个方法,基本够用。
PictureBox 控件的图片加载,比较适合简单场景,比如显示头像、展示图,拖一个控件上去,设置下Image
属性就完事了:
Private Sub Form_Load()
PictureBox1.Image = Image.FromFile("C:\pathtoimage.jpg")
End Sub
工具栏上的小图标?可以用ImageList + ToolStrip组合,图片和控件分开管理,逻辑更清晰:
ImageList1.Images.Add("icon", Image.FromFile("C:\pathtoicon.png"))
ToolStripButton1.Image = ImageList1.Images("icon")
像游戏界面或者自定义控件这种非控件区域,推荐用DrawImage,想怎么画就怎么画,灵活度高:
Dim bmp As New Bitmap(100, 100)
Dim g As Graphics = Graphics.FromImage(bmp)
g.DrawImage(Image.FromFile("C:\pathtoimage.jpg"), 0, 100)
g.Dispose()
PictureBox1.Image = bmp
如果你要玩一些进阶的操作,比如裁剪、旋转、加透明度,那就得上GDI+了:
Private Sub PictureBox1_Paint(sender As Object, e As PaintEventArgs) Handles PictureBox1.Paint
Dim img As Image = Image.FromFile("C:\pathtoimage.jpg")
e.Graphics.DrawImage(img, New Point(0, 0))
End Sub
Bitmap 类也是个老牌好用的家伙,加载图片、保存图片都挺方便的:
Dim bmp As New Bitmap("C:\pathtoimage.jpg")
PictureBox1.Image = bmp
再补一个细节:PictureBox 的 SizeMode属性,记得调一下,要不图片容易被拉伸得奇奇怪怪:
PictureBox1.SizeMode = PictureBoxSizeMode.Zoom
PictureBox1.SizeMode = PictureBoxSizeMode.CenterImage
还有一种偷懒的方式,就是直接在PictureBox 的 Load 事件里写图片加载逻辑,窗体一启动就显示:
Private Sub PictureBox1_Load(sender As Object, e As EventArgs) Handles PictureBox1.Load
PictureBox1.Image = Image.FromFile("C:\pathtoimage.jpg")
End Sub
,VB 虽然有点老,但图像这些事还是挺靠谱的。如果你做的是偏工具类的应用,不妨结合使用这些方式,看哪种更顺手。图片多、变动频繁的话,建议用ImageList
和GDI+
组合,效率会高多。
8.69KB
文件大小:
评论区