资源描述:
《用列表框制作动态畅销书榜单》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、用列表框制作动态畅销书榜单!!Q:垫ScienceandTechnologylnnovetionI-lerald用列表框制作动态畅销书榜单黄敏(江苏省徐州高等师范学校现代教育技术系江苏徐州22111B)学术论坛摘要:本文介绍了利用vb列表框控件制作动态畅销书榜单的设计和步骧.通过实例的开发提高学习者的兴趣,也增强了程序开发的能力.关键词:列表框属性方法中图分类号:TP312文献标识码:A文章编号;1674--098X(2009)09(a)一0248—02在vb的所有标准控件中,列表框控件(1istbox)在具体的开发应用中,是变化多,难把握的.本文通过制作动态新书榜单的实例,来
2、增强对列表框控件的学习,进而达到举一反三的效果.1列表框重要属性和方法List属性:存放歹Ⅱ表框的项目数据.Listlndex属性:选中的项目的序号.ListCount属性:项目的数量.MultiSelect属性:指示是否能够在列表框控件中进行复选.Selected属性:返回或设置列表框控件中的一个项目的选择状态.Text属性:返回当前被选中的项.Addltem方法:将项目添加到列表框控件.RemoveItem方法:从列表框控件中删除一项.2畅销书榜单实例设计新书榜单实例实现显示即时的畅销书前十名榜单和即时编辑榜单的动态效果,有2个窗体form1(图1所示)$1form2(图2
3、所示)构成.在form1中的榜单可以通过窗体右F的按钮进入的编辑页面form2,form2中列表框(1ist1)用来表示排行榜中的书目清单,通过右侧的6个按钮(commandlcommand6)实现对榜单中书目的添加,删除,名次的升图1top10排行榜降和输出.3畅销书榜单具体实现3.1限制项目数为10排行榜最多只能显示最畅销的1o4"书目,如图3所示.这要利用到列表框的listcount属性,但不能简单的给这个属性赋值,要先判断.listcount的值只会在新书入榜的时候增加,所以只要在按钮中写如下语句就可以.'限制项目数为最多为l0IfLiSt1.ListCount>
4、=10ThenMsgBox"榜单已经有1O本畅销书,请删除不在toplO的书后再添加新书!",48,"榜单已满"ExitSubEndIf3.2禁止出现重复项目畅销书排行榜中每一本书都是唯一的,在每一次添加新的书目(变量a表示)的时候,都要和列表里所有的书目进行一一比较,用到了listindex属性和text属性,如图4N示.a=InputBox("请输入入榜的新书名","新书入榜")Fori=0ToList1.ListCount1'一一比较List1.ListIndex=iIfList1.Text-aThen'如果已存在,则不进行添加图2榜单编辑界面248科技创新导报Scien
5、ceandTechnologyinnovationHeraldMsgBOX"你输入的书名已经在榜单中!",16,"书名已存在"ExitSubEndIfNexti3.3只添加排名前十在新书入榜的时候,除了要输入新的书名,还要输入它的排名,而且要对排名进行判断,前十名的才能添加到列表框,用additem方法添加,新书的编号是它的排名(变量b表示)减1,添加后用selected属性设置它为默认选中的项目:b=Val(InputBox("请输入入榜的新书名排行","新书入榜"))Ifb<OOrb>10ThenMsgBOX"排名只能在10以内的正整数!",16,"排名前十"E
6、xitSubEndIfList1.Addltema,bl'添加新的书目List1.Selected(b一1)=True'设置为默认选中的项目3.4删除所有选中的项目如果有一个或多个书目不在排名前十,那么要将其选中,然后从列表框中用Removeltem方法删除,而删除的时候除了要判断每一项是否被选中,还要注意的是listcount的值是变化的,所以只能从下到上进行判断删除.Fori-List1.ListCount-lTo0Step图4已存在书目时消息框学术论坛2009NO.25ScienceandTechnologyInnova1'循环从下到上进行IfList1.Selected
7、(i)=TrueThenList1.RemoveItemI'册0除选中的项EndIfNexti3.5上升一名用变量C表示被选中项目的编号,上升一名就意味着在c-1的位置添加这一项,添加后被选中的位置向后移动了一位,变为c+1,把原来的项删除,即完成了名次的上升.cList1.ListIndexIfC<>0ThenList1.AddItemList1.Text,cl'上移List1.RemoveItemC+1'删除原来的项List1.Selected(c—1)--True'默认选中