设为首页 加入收藏

TOP

子视窗控制项(四十五)
2010-12-30 21:12:42 来源: 作者: 【 】 浏览:32689
Tags:视窗 控制
一个清单方块是字串的集合,这些字串是一个矩形中可以卷动显示的清单。-程式通过向清单方块视窗讯息处理程式发送讯息,可以在清单中增加或者删除字串。当清单方块中的某项被选择时,清单方块控制项就向其父视窗发送WM_COMMAND讯息,父视窗也就可以确定选择的是哪一项。

一个清单方块可以是单选的,也可以是多选的,後者允许使用者从清单方块中选择多个项目。当清单方块拥有输入焦点时,其中项目的周围显示有虚线。在清单方块中,游标位置并不指明被选择的项目。被选择的项目被加亮显示,并且是反白显示的。

在单项选择的清单方块中,使用者按Spacebar键就可以选择游标所在位置的项目。方向键移动游标和目前选择指示,并且能够滚动清单方块的内容。Page Up和Page Down键也能滚动清单方块,但它移动的是游标而不是选择指示。按字母键能将游标和选择指示移到以此字母开头的第一个(或下一个)选项。也可以使用滑鼠在要选择的项目上单击或者双击来选择它。

在多项选择清单方块中,Spacebar键可以切换游标所在位置的项目的选择状态(如果该项已经被选择,则取消选择)。如同在单项选择清单方块中一样,方向键取消前面选择过的项目,并且移动游标和选择指示。但是,Ctrl键和方向键能够在移动游标的同时不移动选择,Shift键加方向键能扩展一个选择。

在多项选择清单方块中,单击或者双击滑鼠按键能取消之前所有的选择,而选择被点中的项目。但是,如果在滑鼠点中某一项的同时也按下Shift键,则只能切换该项的选择状态,而不会改变任何其他项的选择状态。

清单方块样式
 

当您使用CreateWindow建立清单方块子视窗时,您应该将「listbox」作为视窗类别,将WS_CHILD作为视窗样式。但是,这个内定清单方块样式不向其父视窗发送WM_COMMAND讯息,这样一来,程式必须向清单方块询问其中的项目的选择状态(借助於发送给清单方块控制项的讯息)。所以,清单方块控制项通常都包括清单方块样式识别字LBS_NOTIFY,它允许父视窗接收来自清单方块的WM_COMMAND讯息。如果您希望清单方块控制项对清单方块中的项目进行排序,那么您可以使用另一种常用的样式LBS_SORT。

内定情况下,清单方块是单项选择的。多项选择的清单方块相当少。如果您想建立一个多项选择清单方块,那么您可以使用样式LBS_MULTIPLESEL

首页 上一页 42 43 44 45 46 47 48 下一页 尾页 45/61/61
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇功能表及其他资源 下一篇计时器

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: