----------------
选择列表
--------------------
应のBlog
在之前我们已经学会了如何写文本界面,现在我们来学习一下其他的几种界面,在继续之前请确定以前讲的你都已经会了,不然下面的东西可能会很难理解:)
4.1 选择列表
先看个图:
这里是个列表,列表中有两个选项.现在如果点"八神",我们看出来什么效果
这个就是我们这一讲要说的:制作一个选择列表.
用到的还是appuifw这个模块,看代码:
#****代码开始****
import appuifw
def cn(x):return x.decode("utf-8")
def exit():appuifw.app.set_exit()
def press():
index = listbox.current()
appuifw.note(cn("哈哈,我是")+list[index],"info")
list = [cn("八神"),cn("米饭")]
appuifw.app.body = listbox = appuifw.Listbox(list,press)
appuifw.app.exit_key_handler = exit
#****代码结束****
点此下载代码
讲解:
首先我们来看list = [cn("八神"),cn("米饭")]这个,这就是要显示在列表里的文字.中间用逗号隔开.例如:list = [cn("我"),cn("你"),cn("他"),u"China"],注意两边的是中括号 '[]'
下面的appuifw.Listbox(list,press)这里,list就是刚才定义的显示在列表里的文字,然后后面的press就是点击之后的动作:运行press函数.
所以我们定义了press函数:
index = listbox.current()这里是说选中的是列表中的第几个选项.注意:PYTHON都是从0开始计数的.也就是说如果你按的是第一个,这里的listbox.current()其实等于0.
这个你不懂没关系,回头就知道了....干嘛呢,没让你真回头,我的意思是说以后你就知道了.
现在知道了当前选中的是第几个,那么就让列表中选中的字显示出来,这里我们用了note这个显示方法,这应该不陌生了吧.现在我们看里面的 cn("哈哈,我是")+list[index] 这里面的加号.如果你是在用A4的话,那么你要注意不要把+号输成中文的那个大加号,不知道是不是你们的A4也是这样,我的A4在英文状态下输入的那个加号是很大的,那个不行,一定要切换到中文状态下的那个小+号才可以的.(编者说明:实际的 '+' 号应该是英文状态输入,由于A4输入法本身原因才用中文状态输入)注意了这个之后来看
list[index] 这个,呃,怎么解释呢,list就是刚才定义的那个,后面这个[index]就是说显示列表中的第几个.因为我们已经知道了index等于几,比如list[0]这就是"八神",如果list[1]就是"米饭".现在你自己修改一下吧,把自己的想法通过代码表达出来.
下一讲我们要讲解如何做到点击每个选项有不同的动作
这篇应该是相对难懂的,但是我想如果你用心去好好研究的话,应该很快就能明白,原谅我的表达能力