VB.NET制作图片按钮实现步骤一一讲解

VB.NET是目前应用比较广泛的编程语言。它在文件处理,移动设备操作,图形界面的处理方面都能够体现强大的作用。那么今天我们就一起学习一个其中的应用技巧,VB.NET制作图片按钮的实际操作方法。

公司主营业务:成都网站制作、网站设计、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联公司推出颍上免费做网站回馈大家。

VB.NET制作图片按钮思路:很简单,就是在一个picturebox控件上放置一个button控件,然后将这个button添加进picturebox上(确保先拖拽picturebox,后拖拽button),设置这个button的背景色(这个时候是相对于picturebox)为透明。

 
 
 
  1. Imports System.ComponentModel 
  2. Public Class picturebutton 
  3. Inherits System.Windows.Forms.UserControl 
  4. #Region " Windows 窗体设计器生成的代码 " 
  5. 'UserControl 重写 dispose 以清理组件列表。 
  6. Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) 
  7. If disposing Then 
  8. If Not (components Is Nothing) Then 
  9. components.Dispose() 
  10. End If 
  11. End If 
  12. MyBase.Dispose(disposing) 
  13. End Sub 
  14. 'Windows 窗体设计器所必需的 
  15. Private components As System.ComponentModel.IContainer 

注意:以下VB.NET制作图片按钮的过程是 Windows 窗体设计器所必需的

可以使用 Windows 窗体设计器修改此过程。

不要使用代码编辑器修改它。

 
 
 
  1. Friend WithEvents PictureBox1 As System.Windows.Forms.PictureBox 
  2. Friend WithEvents Button1 As System.Windows.Forms.Button 
  3.  
    Private Sub InitializeComponent() 
  4. Me.PictureBox1 = New System.Windows.Forms.PictureBox() 
  5. Me.Button1 = New System.Windows.Forms.Button() 
  6. Me.SuspendLayout() 
  7. 'PictureBox1 
  8. Me.PictureBox1.Name = "PictureBox1" 
  9. Me.PictureBox1.Size = New System.Drawing.Size(136, 40) 
  10. Me.PictureBox1.TabIndex = 0 
  11. Me.PictureBox1.TabStop = False 
  12. 'Button1 
  13. Me.Button1.Name = "Button1" 
  14. Me.Button1.TabIndex = 1 
  15. Me.Button1.Text = "Button1" 
  16. 'picturebutton 
  17. Me.Controls.AddRange(New System.Windows.Forms.Control() 
    {Me.Button1, Me.PictureBox1}) 
  18. Me.Name = "picturebutton" 
  19. Me.ResumeLayout(False) 
  20. End Sub 
  21. #End Region 
  22. Public Sub New() 
  23. MyBase.New() 

该调用是 Windows 窗体设计器所必需的。

 
 
 
  1. InitializeComponent() 
  2. '在 InitializeComponent() 调用之后添加任何初始化 
  3. Me.Button1.Width = 100 ‘设置按钮的初始大小 
  4. Me.Button1.Height = 23 
  5. Me.Button1.BackColor = Color.Transparent ‘背景色透明 
  6. Me.Button1.ForeColor = Color.Black 
  7. Me.PictureBox1.Controls.Add(Me.Button1) 
  8. End Sub 
  9. Private m_text As String ‘设置按钮标题 
  10. Private a As Integer 
  11. 'Private m_image As Image 
  12.  _ 
  13. Public Property image() As image 
  14. Get 
  15. Return Me.PictureBox1.Image 
  16. End Get 
  17. Set(ByVal Value As image) 
  18. Me.PictureBox1.Image = Value 
  19. Invalidate() 
  20. End Set 
  21. End Property 
  22. Shadows Property forecolor() As Color 
  23. Get 
  24. Return Me.Button1.ForeColor 
  25. End Get 
  26. Set(ByVal Value As Color) 
  27. Me.Button1.ForeColor = Value 
  28. Invalidate() 
  29. End Set 
  30. End Property 
  31. Shadows Sub ResetForeColor() 
  32. Me.Button1.ForeColor = SystemColors.ControlText 
  33. End Sub 

VB.NET制作图片按钮的单击事件

 
 
 
  1. Event BtnClick(ByVal sender As Object, ByVal e As System.EventArgs) 
  2. Private Sub Button1_Click(ByVal sender As Object, 
    ByVal e As System.EventArgs) Handles Button1.Click 
  3. RaiseEvent BtnClick(Me, e) 
  4. End Sub 

控件改变大小时,需重绘控件,以使子控件排位美观

 
 
 
  1. Private Sub FileTextBox_Resize(ByVal sender As Object,
     ByVal e As System.EventArgs) Handles MyBase.Resize 
  2. RedrawControls() 
  3. End Sub 

子控件会自动继续容器的Font属性,所以改变容器的Font属性时也要重绘控件

 
 
 
  1. Protected Overrides Sub OnFontChanged(ByVal e As System.EventArgs) 
  2. '让基控件更新文本框 
  3. MyBase.OnFontChanged(e) 
  4. '重绘控件 
  5. RedrawControls() 
  6. End Sub 
  7. '重绘控件 
  8. Private Sub RedrawControls() 
  9. '控件宽度 
  10. Dim width As Integer = Me.ClientRectangle.Width '获得工作区宽 

以VB.NET制作图片按钮的高度来确定控件高度

 
 
 
  1. Dim btnSide As Integer = Button1.Height 
  2. Dim btnwidth As Integer = Button1.Width 
  3. If Me.ClientRectangle.Height <> btnSide Then 

设置控件工作区的大小

 
 
 
  1. 'Me.SetClientSizeCore(btnwidth, btnSide) 
  2. Me.SetClientSizeCore(width, btnSide)
  3. '这里使用工作区的宽是因为:按钮和picturebox可以调整宽度 
  4. '上面的语句激发了嵌套的Resize事件,因此需要立即退出,
    如果不退出,就会反复调用进入死循环 
  5. Exit Sub 
  6. End If 

调整子控件的大小

 
 
 
  1. 'Txt.SetBounds(0, 0, width, btnSide) 
  2. 'Btn.SetBounds(width - 19, 2, 17, btnSide - 4) 
  3. Me.PictureBox1.SetBounds(0, 0, width, btnSide) 
  4. Me.PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage 
  5. Me.Button1.SetBounds(0, 0, width, btnSide) 
  6. End Sub 
  7. End Class 

VB.NET制作图片按钮的相关实现方法就为大家介绍到这里。

网站题目:VB.NET制作图片按钮实现步骤一一讲解
网页URL:http://www.shufengxianlan.com/qtweb/news38/20188.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联