用VB.NET打造个性化ListBox控件(图)

本文介绍如何在VB.NET中利用.NET Framework SDK的ListBox类,通过设置DrawMode属性,触发DrawItem和MeasureItem事件,实现自定义字体、颜色、边框以及在列表项中添加图片的个性化ListBox控件。
摘要由CSDN通过智能技术生成

ListBox(列表框)也是日常经常使用和遇到的组件,在Visual Basic .Net中使用的ListBox其实是从.Net FrameWork SDK中的ListBox类经过实例化产生的。.Net FrameWork SDK中的ListBox类所创建的ListBox是最典型的,要想使自己的ListBox与众不同就必须编写相应的代码,好在.Net FrameWork SDK中的ListBox类为实现个性化的ListBox提供丰富的、可操作“工具”,这些“工具”就是绘制ListBox的所需要的事件、相关的属性以及丰富的绘制方法。在本文中将介绍在ListBox中各个元素的绘制方法,其中包括绘制各种字体、颜色以及在各项上加上边框和为各项加入图片等。下面首先来了解一下.Net FrameWork SDK为在VB.Net中实现手工绘制ListBox提供的“工具”。

  一..Net Frame Work SDK 为在VB.Net实现个性化ListBox提供的工具

  1. 属性:

  在缺省情况下,ListBox是不允许被重绘制的,这是因为ListBox中的“DrawMode”属性值是“Normal”。此属性的作用是设定ListBox的绘制模式,“Normal”是枚举DrawMode中的一个成员。设定为“Normal”意味着ListBox中各个成员都是系统控制,并且各项大小相等。“DrawMode”属性在本文中的作用类似与上一文中的“OwnerDraw”属性。枚举DrawMode中的其他成员请参阅表01所示:

属性
说明
Normal 组件的所有元素都由操作系统绘制,并且元素大小都相等。
OwnerDrawFixed 组件的所有元素都是手动绘制的,并且元素大小都相等。
OwnerDrawVariable 组件的所有元素都由手动绘制,元素大小可能不相等。

                 表01:枚举DrawMode中的成员及其说明

  本文设定ListBox的“DrawMode”属性值是“OwnerDrawVariable”。因为本文介绍的程序不仅绘制ListBox中的各元素,还将设定ListBox中元素的大小。

  2. 事件:

  在设定“DrawMode”属性值为“OwnerDrawVariable”后,将会触发一些用以绘制ListBox的事件,如:DrawItem事件和MeasureItem事件。DrawItem事件主要处理绘制ListBox中的各个元素,MeasureItem事件主要是处理设置ListBox各元素的大小。ListBox中的DrawItem事件和MeasureItem事件和上一节中介绍的MenuItem的DrawItem事件和MeasureItem事件是一样的,分别接收DrawItemEventArgs参数和MeasureItemEventArgs参数数据,并以此数据来处理。这二个事件的详细介绍请参阅前一节中内容。

  3. 绘制图形的方法:

  在绘制ListBox时所采用的方法和上一节中也基本相同,唯一不同的是在本文中增加了图形绘制方法DrawImage,DrawImage方法的作用是在指定的位置,以指定图形的原始大小进行绘制,本文通过DrawImage方法实现在ListBox各项中增加相应的图形。

  二.设计、调试和运行环境:

  (1).微软公司视窗2000服务器版。

  (2).Visual Studio .Net 2003企业构建版,.Net FrameWork SDK 1.1版本号4322。
<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值