王朝百科
分享
 
 
 

listbox

王朝百科·作者佚名  2009-12-08  
宽屏版  字体: |||超大  

纯正的ListBox:既可以通过以下语句来创建

HWND hFontList = CreateWindow("ListBox",NULL,

WS_CHILD|WS_VISIBLE|LBS_STANDARD,

20,30,210,280,hWnd,HMENU(ID_LISTBOX),hInstance,NULL);

也可以在IDE中添加一个列表框资源并加载

HWND hFontList = GetDlgItem(hWnd, IDC_LIST1);

列表框是一种矩形窗口,它向用户提交一种可供选择的选项。

在创建列表框控制的语句中,最重要的是第三个字段。在这个字段中定义了该窗口类的样式:

WS_CHILD|WS_VISIBLE|LBS_STANDARD

在这里,我相信你已经不会对 LBS_STANDARD 标志是另一个大选项表中的一个选项感到惊奇。这是 Windows 处理问题时的一种惯用手法。下面列出了一些在通常情况下使用的选项:

LBS_MULTIPLESEL:

用户可以一次选择多个选项。

LBS_EXTENDEDSELP:

可以使用 Shift 键和鼠标器或专用的组合键来选择多个选项。

LBS_NOTIFY:

当列表框不具备这个样式时,其父窗口将不知道用户是否已经单击或双击列表框的某项。

LBS_STANDARD:

采用标准的列表框,它具有边框和 LBS_NOTIFY 样式。

LBS_OWNERDRAW:

当你想在列表框显示位图或其他非标准选项时,需要这个样式。

LBS_USETTABSTOPS:

在一个列表框内仿真多个栏目。

LBS_WANTKEYBOARDINPUT:

焦点在列表框的时候,程序可以接收键盘输入。

在这些可选的样式中,LBS_STANDARD 和 LBS_MULTIPLESEL 是最重要的两项。多选列表框工作起来就象 File Manager 的窗口那样,它们允许用户一次选择多个选项。

与列表框通信是一个相当复杂的课题。因此,这方面的深入讨论推迟到下一章进行。

在这里只给出几个简单的例子加以示范。如果需要把一个字符串加到列表框,你可以这样做:向列表框发送一条 LB_ADDSTRING 消息:

char * MyString[]="skyline";

SendMessage(hListBox,LB_ADDSTRING,0,LPARAM(MyString));

反过来,如果需要从列表框检索一个字符串,你可以这样做:首先使用 LB_GETCURSEL 消息来获取当前被选择的选项的索引:

int index = SendMessage(hFontList,LB_GETCURSEL,0,0);

等同于

int index = ListBox_GetCurSel(hFontList);

然后使用这个索引及 LB_GETTEXT 消息来检索这个字符串:

SendMessage(hListBox,LB_GETTEXT,index,LONG(lpszBuffer));

ListBox在VB中:ListBox作为vb的一个控件

中文名称列表框

可以通过vb的代码添加、修改列表框的内容

列表框可以在编程中显示各种需要的数值

方法:

Sub AddItem(Item As String, [Index])

VB.ListBox 的成员

添加一项到 Listbox 控件。

参数:

Item:所要添加的字符串

Index:可选,将字符串插入在第Index项前面

例:

Dim i%

For i = 1 To 10

List1.AddItem CStr(i)

Next

List1.AddItem "你好", 5

效果:

1

2

3

4

你好

5

6

7

8

9

10

方法:

Sub AddString(CString s)

例:

Dim i%

For i = 1 To 10

List1.AddString( CStr(i))

Next

List1.AddItem "你好", 5

效果:

1

2

3

4

你好

5

6

7

8

9

10

Sub Clear()

VB.ListBox 的成员

清除列表所有项。

参数:无

例:在AddItem的例子后添加

List1.Clear

这样你的列表框中的内容就都清除了

Sub RemoveItem(Index As Integer)

VB.ListBox 的成员

从一个 ListBox 控件中删除一项。

参数:

Index:你要删除的那项的索引

例:在AddItem的例子后添加

List1.RemoveItem 3

效果:

1

2

3

5

你好

6

7

8

9

10

属性:

Property Columns As Integer

VB.ListBox 的成员

返回/设置一个值,决定列表框为是在一列中(值为0时)垂直滚动,还是多个列中(值大于0时)水平滚动。

Property List(Integer) As String

VB.ListBox 的成员

返回/设置控件的列表部分中包含的项。

Property ListCount As Integer

只读

VB.ListBox 的成员

返回控件的列表部分中的项目数。

Property ListIndex As Integer

VB.ListBox 的成员

返回/设置该控件中当前选定项目的索引值。

Property MultiSelect As Integer

只读

VB.ListBox 的成员

返回/设置一个值,决定用户是否可以在一个控件中做多重选择。

Property NewIndex As Integer

只读

VB.ListBox 的成员

返回添加到控件中的最近一个项目的索引。

Property SelCount As Integer

只读

VB.ListBox 的成员

返回 ListBox 控件选定的项目数。

Property Selected(Integer) As Boolean

VB.ListBox 的成员

返回/设置控件中项目的选定状态。

Property Sorted As Boolean

只读

VB.ListBox 的成员

指出控件元素是否自动按字母顺序排序。

Property Style As Integer

只读

VB.ListBox 的成员

返回/设置一个值,决定是否将复选框显示在 ListBox 控件中。

Property Text As String

VB.ListBox 的成员

返回当前选中项的文本。

Property TopIndex As Integer

VB.ListBox 的成员

返回/设置在控件中显示在最顶端的项目。

-------------------------------------------------------------------

ListBox 和 ComboBox 为用户提供了选择。按照缺省规定,选项以垂直单列方式显示,也可以设置成多列方式。如果项目数量超过 ComboBox 或 ListBox 所能显示的数目,ScrollBar 自动出现在控件上。于是用户可以在列表中上下左右滚动。

ComboBox 兼有 TextBox 和 ListBox 两者的功能。该控件允许用户通过键入文本或选择列表中的项目来进行选择。

与其它含有单值的控件相反,例如 Label 的 Caption 属性或 TextBox 的 text 属性,ListBox 和 ComboBox 含有多个值或值的集合。在运行时用内置的方法增加、删除及保持集合中的值。要将几条项目添加到名为 List1 的 ListBox 中,其代码如下:

List1.AddItem "Paris"

List1.AddItem "New York"

List1.AddItem "San Francisco"

ListBox 和 ComboBox 是在有限空间为用户提供大量选项的有效方法。

详细信息 关于 ListBox 和 ComboBox 控件的详细信息,请参阅“使用 Visual Basic 的标准控件”。

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如何用java替换看不见的字符比如零宽空格​十六进制U+200B
 干货   2023-09-10
网页字号不能单数吗,网页字体大小为什么一般都是偶数
 干货   2023-09-06
java.lang.ArrayIndexOutOfBoundsException: 4096
 干货   2023-09-06
Noto Sans CJK SC字体下载地址
 干货   2023-08-30
window.navigator和navigator的区别是什么?
 干货   2023-08-23
js获取referer、useragent、浏览器语言
 干货   2023-08-23
oscache遇到404时会不会缓存?
 干货   2023-08-23
linux下用rm -rf *删除大量文件太慢怎么解决?
 干货   2023-08-08
刀郎新歌破世界纪录!
 娱乐   2023-08-01
js实现放大缩小页面
 干货   2023-07-31
生成式人工智能服务管理暂行办法
 百态   2023-07-31
英语学习:过去完成时The Past Perfect Tense举例说明
 干货   2023-07-31
Mysql常用sql命令语句整理
 干货   2023-07-30
科学家复活了46000年前的虫子
 探索   2023-07-29
英语学习:过去进行时The Past Continuous Tense举例说明
 干货   2023-07-28
meta name="applicable-device"告知页面适合哪种终端设备:PC端、移动端还是自适应
 干货   2023-07-28
只用css如何实现打字机特效?
 百态   2023-07-15
css怎么实现上下滚动
 干货   2023-06-28
canvas怎么画一个三角形?
 干货   2023-06-28
canvas怎么画一个椭圆形?
 干货   2023-06-28
canvas怎么画一个圆形?
 干货   2023-06-28
canvas怎么画一个正方形?
 干货   2023-06-28
中国河南省郑州市金水区蜘蛛爬虫ip大全
 干货   2023-06-22
javascript简易动态时间代码
 干货   2023-06-20
感谢员工的付出和激励的话怎么说?
 干货   2023-06-18
 
>>返回首页<<
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有