扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:马金虎 来源:天极网 2007年11月9日
关键字:
Dim img_fileopen , img_exit , img_close , img_security , img_network , img_about As Bitmap |
'运行程序前确认在文件当前目录存在以下六个BMP文件 img_fileopen = New Bitmap ( "fileOpen.bmp" ) img_exit = New Bitmap ( "exit.bmp" ) img_close = New Bitmap ( "close.bmp" ) img_about = New Bitmap ( "about.bmp" ) img_security = New Bitmap ( "about.bmp" ) img_network = New Bitmap ( "network.bmp" ) |
Private Sub listBox1_DrawItem ( ByVal sender As Object , ByVal e As System.Windows.Forms.DrawItemEventArgs ) Handles listBox1.DrawItem Dim datas As String ( ) = sData Dim rc As RectangleF = New RectangleF ( e.Bounds.X + 1 , e.Bounds.Y + 1 , e.Bounds.Width - 5 , e.Bounds.Height - 3 ) Dim rc1 As Rectangle = New Rectangle ( e.Bounds.X + 1 , e.Bounds.Y + 1 , e.Bounds.Width - 5 , e.Bounds.Height - 3 ) e.DrawBackground ( ) '在选定项目上绘制选定背景色 'e.DrawFocusRectangle ( ) Dim sf As StringFormat = New StringFormat ( ) sf.Alignment = StringAlignment.Center '设定ListBox中项目名称的在矩形区域的排列对齐方式 e.Graphics.DrawRectangle ( New Pen ( New SolidBrush ( System.Drawing.Color.Black ) , 1 ) , rc1 ) '以线条粗度为1,黑色画笔对绘制ListBox中的每一个项目的边框 e.Graphics.DrawString ( sData ( e.Index ) , New Font ( FontFamily.GenericSansSerif , 14 , FontStyle.Bold ) , New SolidBrush ( sColorData ( e.Index ) ) , rc , sf ) ' 以指定的字体大小、类型、颜色绘制ListBox项目名称 Dim useImage As Image = Nothing '创建、初始化一个Image实例 '以下是代码是在ListBox上绘制图片 If ( datas ( e.Index ) = "红色" ) Then useImage = img_fileopen End If If ( datas ( e.Index ) = "蓝色" ) Then useImage = img_close End If If ( datas ( e.Index ) = "黄色" ) Then useImage = img_exit End If If ( datas ( e.Index ) = "绿色" ) Then useImage = img_security End If If ( datas ( e.Index ) = "黄绿色" ) Then useImage = img_network End If If ( datas ( e.Index ) = "灰色" ) Then useImage = img_about End If If ( useImage Is Nothing ) = False Then Dim sz As SizeF = New SizeF sz = useImage.PhysicalDimension ( ) '获取此Image实例的宽度和高度。 e.Graphics.DrawImage ( useImage , e.Bounds.X + 5 , CInt ( ( e.Bounds.Bottom + e.Bounds.Top ) / 2 - sz.Height / 2 ) ) '在制定的位置按照原始大小绘制图片 End If End Sub |
图03:【打造自己的ListBox】项目运行界面之二 |
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者