列表控件

关键词:

列表控件(精选三篇)

列表控件 篇1

1 列表类控件

VB.NET是一款可以非常方便且容易地设计基于Windows操作系统和Web应用程序的软件开发工具。它提供了各种各样功能全面的控件。如可以进行文本编辑的Text Box、Rich Text Box控件,可以进行按钮应用的Button、Radio Button、Check Box控件,可以进行数据库程序设计的Data Grid View控件等等,还有这里要探讨的可以提供选项进行选择或删除的控件,如List Box、Combo Box控件等。

若要很好地利用这些控件实现相应功能,必须非常熟悉这些控件常用的属性、方法和事件。在VB.Net中,常用的列表类的控件有List Box、Combo Box和Checked List Box控件。对于List Box控件而言,这里涉及的属性有:集合属性Items,用来设置列表框中的显示内容;Item属性,用来获取列表框中指定索引号的项目,Selected Index属性:用来设置或者返回当前在列表框中选定项目的索引号;Selection Mode属性,用来获取或者设置在列表框中选择项目的方式;Selected Item属性,用来获取或者设置列表框中的当前选定项目;Selected Items属性,用来获取列表框中选定项目的集合;Selected Indices属性,用来获取列表框中所有选定项的索引。涉及的方法有:Add方法,用来在列表框中添加项目;Remove方法,用来在列表框中删除指定的项目;Set Selected方法,用来选中某一项或取消对某一项的选择。常用的事件有:Selected Index Changed事件,当改变列表框中的选择时会触发;Click事件,当单击列表框时触发。

下面通过实例具体实现利用List Box控件添加和删除单个或多个项目的方法。

2 利用列表类控件选择数据选项

2.1添加或删除单个选项

在VB.Net中新建一个Windows应用程序项目,在Form1窗体上添加2个Text属性分别为“列表框1”和“列表框2”的Label控件,2个用于显示项目的List Box控件和5个Text属性分别为“添加一项”、“添加多项”、“添加/删除一项”、“添加/删除多项”和“添加/删除多项”的Button控件,界面如图2所示。

其中,“添加一项”的功能是在List Box1中选择一个选项,把它添加到List Box2中。“添加一项”Button1控件的部分程序代码如下,运行结果如图3所示:

“添加/删除一项”的功能是在Listbox1中选择一个项目,把它添加到Listbox2中,并在Listbox1中把该项目删除。“添加/删除一项”Button3控件的部分程序代码如下,运行界面如图4所示:

2.2选择或删除多个选项

“添加多项”的功能是在List Box1中选择若干个选项,把它们添加到List Box2中。,在“添加多项”Button2控件的部分程序代码如下,这里要用到相关集合属性,运行界面如图5所示:

“添加/删除多项”的功能是在Listbox1中选择若干个项目,把它们添加到Listbox2中,并在Listbox1中把该这些项目删除。该功能提供了两种方法。其中第一种方法,“添加/删除多项”Button4控件的部分程序代码如下,这里原项目的删除借助于一个数组来实现,运行界面如图6所示:

第二种方法,“添加/删除多项”Button5控件的部分程序代码如下,运行界面如图6所示:

3 结论

通过这些方法,可以看出实现相关功能并不是很复杂,主要是对相关控件的属性、方法和事件要非常熟悉,其中在添加多个项目的同时进行删除的功能,要借助第三方把所选择项目的相关信息保存下来,以便再次使用。在软件设计中类似的功能都可以用这些方法实现。

摘要:目前很多软件界面中会提供若干个选项供用户选择或删除,如可以选择或删除单个选项,也可以选择或删除多个选项。一方面为了方便软件编程人员更好地实现该功能,另一方面让用户能够更加容易进行相关操作,因此探讨一下在Visual Basic.Net中列表类控件的相关功能的应用。

关键词:数据选择,单选,多选,删除,VB.NET,列表类控件

参考文献

[1]沈大林.Visual Basic.NET实例教程[M].北京:电子业出版社,2006:90-97.

[2]刘刚.VB.NET程序设计基础[M].北京:高等教育出版社,2008:130-134.

[3]张琴孙更新宾晟.Visual Basic.NET 2008从基础到项目实战[M].北京:化学工业出版社,2010:243-245.

[4]青岛东合信息技术有限公司青岛海尔软件有限公司.VB.NET程序设计[M].北京:电子工业出版社,2011:55-59.

[5]夏耘.程序设计与实践(VB.NET)[M].北京:电子工业出版社,2012:139-140.

[6]本社.Visual Basic 2005程序设计教程[M].北京:清华大学出版社,2011:138-139.

[7]白素兰.Visual Baisc.NET案例化教程[M].大连:大连理工大学出版社,2010:49-55.

[8]彭复明.VB.NET中拖放功能的应用[J].南京工业职业技术学院学报,2008(4):39-40.

[9]林锋李迎辉.基于Javascript的可编辑下拉列表框的设计与实现[J].电脑知识与技术,2009(15):35-36.

VB―列表框控件 篇2

图一

默认的列表框控件名为 ListX(X为阿拉伯数字 1、2、3,等等),规则的命名方式为:LstX(X为用户自定义的名字,如 LstName、LstUser,等等)。

一、列表框控件的主要属性:

列表框中可以有多个项目供选择,用户通过单击某一项选择自己所需要的项目,如果项目太多,超出了列表框设计时的长度,则自动增加竖向滚动条,如图二:

图二

除了一些常见的诸如 Font 、Height、Left、Width、Enabled、Name 等属性外,列表框还有一些特殊的属性:

1、List(列表)属性:

List 是列表框最重要的属性之一,其作用是罗列或设置表项中的内容。可以在界面设置时直接输入内容,如图三:

图三

在程序运行时,列表框中所有的选项,都可以通过 List(下标值) 的形式表示。比如列表框中的第一项,用 List(0)表示,列表框中的第二项,用 List(1)表示,列表框中的第十项,用 List(9)表示,以此类推。

大家注意,列表框中的第一项,是 List(0) ,而不是 List(1) 。

<1>、List 属性的使用是非常灵活的,比如我们要从如图二的列表框(Lst1)中取出第三项内容,可以用下面的代码做到:A$ = Lst1.List(2)

其中,A 是一个变量;$ 指明了这个变量的类型:字符串型;这句话的意思是:将 Lst1 列表框中第三项(List(2))取出来然后赋值给字符串变量 A 。

象上面这种赋值办法,在 VB 中是非常普遍的,又如以前我们学到的:

LblShow.Caption = “Visual Basic”,这句话是指将 Visual Basic 这个字符串赋值给 LblShow 标签控件并作为其标题。

紧接上面的内容,假设我们用一个标签显示出刚才取出的表项:

LblShow.Caption = A$

那么显示的结果正是我们取出的选项。

可见,取出某个列表框中的某一表项并将其赋值给某个变量,代码如下:

字符串变量 = 列表框名称.List(X) ,其中,X 是下标。

<2>、通过 List() 改变原有表项:假设我们要将如图二的列表框中第三项内容改为“跟我学 VB”,只需输入下面的代码即可:

Lst1.List(2) = “跟我学 VB”

上句话的意思是将“跟我学 VB”字符串赋值给 Lst1 并作为其第三项的内容,

结果如图四:

图四

可见,要修改某个列表框中某一选项:

列表框名称.List(X) = “欲修改成的内容” ,其中,X 是下标。

2、ListCount 属性:

本属性返回列表框表项数量的数值,只能在程序运行时起作用。比如:一个有着四种选项的列表框,那么 ListCount 就为 4 ;一个列表框有五个选项,那么 ListCount 就为 5 。

返回一个列表框的表项数量值并将其赋值给某个变量,代码如下:

数值型变量 = 列表框名称.ListCount

比如要返回图二列表框的 ListCount:

X% = Lst1.ListCount ,其中,X 是变量,% 表示X是整数类型的变量。

3、ListIndex(索引)属性:

本属性用来返回或设置控件中当前选择项目的索引号,只能在程序运行时使用。第一个选项的索引号是 0 ,第二个选项的索引号是 1 ,第三个选项的索引号是 2 ,依此类推,ListCount 始终比最大的 ListIndex 值大 1 。当列表框没有选择项目时, ListIndex 值为 -1 。

在程序中设置 ListIndex 后,被选中的项目呈反相显示,如图五:

图五

在列表框控件的所有属性中,本属性是非常重要的,因为一个列表,事先你并不知道用户将要选择哪一条项目,这时,只有根据 ListIndex 返回的数值,我们才能让程序针对用户的选择做出适当的反应。

返回 ListIndex 的代码如下:

X% = 列表框名称.ListIndex

联想:根据前面的知识我们知道,要取出第三项内容,代码如下:

A$ = Lst1.List(2)

假设现在选中的是第三项,但我们事先不知道用户要选择这一项,那么又应该如何访问这第三项呢?

代码如下:A$ = Lst1.List(Lst1.ListIndex) 此时,Lst1.ListIndex 等同于 2 。

仔细想一想,为何要如此书写?

4、Columns(列)属性:

遥测数据列表滚动控件的设计与实现 篇3

随着经济的发展和科技的进步, 各国越来越重视空空导弹的研制[1], 空空导弹整体系统越来越复杂[2], 相应遥测传输的信息量也就越来越大, 需要实时监测的参数也就越来越多[3]。而不同的参数类型需要匹配不同的显示格式, 例如模拟量参数需要滚动显示, 各种总线参数需要以曲线的方式连续显示。

在数据滚动更新过程中, 随着遥测数据采集速率的增大[4], 帧间隔越来越小, 屏幕快速更新引起的闪烁也越来越严重。

本文针对需要连续滚动显示参数采取控件编写[5]的方法, 将常用功能封装在控件中[6], 提供给遥测数据采集软件调用;并通过内存拷贝, 利用双缓存机制, 解决了数据快速更新引起的闪烁, 较好的实现了采集信息列表化滚动的功能。

1 软件设计

1.1 功能设计

在数据驱动的列表滚动控件中, 首先应该能够满足数据滚动显示, 而滚动显示的过程实际是程序在屏幕上不停的重新绘图, 然后刷新显示出来。

采用传统的方法把绘图代码写进函数中, 通过函数的互相调用, 经过绘制、擦除、重绘三个阶段[7], 将图形显示在屏幕上, 当刷新比较快时, 将出现比较严重的闪烁问题, 而遥测数据的更新是以毫秒级为基础的, 所以软件的首要功能也是最基本的功能应能够解决当数据刷新频率较快时的屏幕闪烁问题。

此外控件还应该具有以下功能:

(1) 标题栏与滚动栏运行时互相独立;

(2) 可以动态改变行列的高度宽度;

(3) 当数据异常时, 报警显示;

(4) 运行过程中可以临时取消显示某一参数;

(5) 所有前景色、背景色均可设置;

(6) 预留接口以供程序调用。

1.2 软件结构

从加载列表滚动控件[8]到使用一个控件的流程如图1所示。分析图1 可以得出此控件需要以下几个模块:

(1) 读写配置文件信息模块;

(2) 设置背景色、字体大小、参数显示信息、报警值模块;

(3) 参数显示报警模块;

(4) 改变行宽列宽信息模块。

2 软件实现

2.1 滚动采取双缓存技术

双缓存技术是在内存中操作, 然后再把操作结果拷贝到屏幕内存中进行显示的技术。应用双缓存技术实时显示的滚动数据, 是数据更新后的结果, 而不是更新过程, 更新过程是在内存中开辟的一块区域中完成, 对屏幕操作只有一次过程, 更新的效率得到大幅提高。

传统方法与双缓存技术的比较[9]如图2 所示。

双缓存技术的使用过程如下[10]:

(1) 定义显示设备对象和位图对象:

(2) 建立与屏幕显示内容兼容的内存显示设备和位图, 并将位图选入到内存显示设备中:

(3) 先将背景色清除, 然后绘图:

(4) 调用Bit Blt在屏幕上显示设备对象中的更新结果;

(5) 绘图完毕后, 释放绘图对象:

2.2 运行过程中动态改变列宽、行宽

由于控件不能独立运行, 必须嵌入到某个容器程序中, 与该容器一起运行。当某个程序调用控件时, 控件的大小可以动态设置, 设置后就固定不变。

当需要改变列表控件的列宽时, 在鼠标获得列的焦点后, 只需要像List Ctrl控件拖动某列即可改变列的宽度。

而为了运行时界面的美观, 数据需要铺满整个控件, 这就需要在控件中均匀分布各行。当需要改变行宽时, 改变的是所有的行宽。所以本控件是在计算数据滚动区域高度后, 根据需要改变的行宽, 重新分布各行, 并且相应改变字体大小, 以适应新的行宽。

2.3 读写配置文件信息

当控件被应用程序首次加载时, 根据预留接口可以配置参数信息, 包括参数名、参数对应数据显示上下限、报警值、字体大小、背景色、文本色、行宽、列宽等信息。程序运行后, 根据显示需要, 可以动态更改行宽列宽信息, 以适应屏幕需要。

为了体现使用控件的便利, 这些初步配置信息和更改信息, 必须被保存, 以供应用程序下次加载控件时自动调用。

3 使用效果

把列表滚动控件集成到遥测数据采集软件中, 列表滚动控件运行良好, 占用内存空间少。实时运行过程中, 可以动态调整列宽行宽信息, 当数据超出报警值, 可以显示报警信息, 运行界面如图3 所示。

在100 ms至6 ms间隔的采集信息测试过程中, 数据滚动更新稳定, 没有出现闪烁现象。

4 结语

基于Active X技术的为数众多的软件组件都提供了满足某个规范的一系列编程接口, 应用程序可以通过该编程接口使用有软件组件提供的各种功能, 而无需知道这些功能在具体的软件组件里是如何实现的。双缓存技术能够有效的解决数据频繁刷新引起的屏幕闪烁问题。本软件就是基于这两种技术开发出来的, 供遥测数据采集软件调用, 测试表明, 该软件运行稳定, 能够满足实时遥测数据的采集分析。

摘要:实时数据滚动更新在遥测数据监测中占据着重要的地位。但随着遥测数据采集速率的增大, 帧间隔越来越小, 屏幕刷新引起的闪烁也越来越严重。在此提出通过控件技术实现数据列表滚动功能, 并通过内存拷贝, 利用双缓存机制, 解决数据快速更新引起的闪烁。通过测试证明, 该软件运行稳定, 操作方便, 解决了屏幕闪烁问题, 在遥测数据监测中发挥了重要作用。

注:本文为网友上传,旨在传播知识,不代表本站观点,与本站立场无关。若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:66553826@qq.com

上一篇:最新交通安全教育班会课教案设计 交通安全教育主题班会教案通用(4篇) 下一篇:老年口腔