列表界面有两种,一种是普通的列表界面,一种是图形列表界面,列表界面和菜单是差不多的,只是列表被应用到了界面上面,更加方便操作
代码:
import kuihua,e32
def cn(x):
return x.decode("utf-8")
def exit():#定义退出函数
kuihua.app.set_exit()
def ts0():#定义提示函数0
kuihua.note(cn("就喜欢我这么简单呀"),"conf")
def ts1(): #定义提示函数2
kuihua.note(cn("就知道你是很喜欢我的"),"conf")
def dz(): #定义一个动作函数
index=lb.current()#获得用户动作赋值给index
if(index==0):
ts0()#如果点击的是第0个,就调用ts0函数,编程从0开始计算
if(index==1):
ts1()#同上
if(index==2):
exit()#同上
list=[cn("喜欢我"),cn("非常喜欢我"),cn("退出")]#赋值一个列表
appuifw.app.body=lb=appuifw.Listbox(list,dz)#将程序界面设置为列表界面
from e32 import Ao_lock#加载模块##
lock=Ao_lock()##
appuifw.app.exit_key_handler=lock.signal#定义右键为释放线程
lock.wait()#锁定线程##
下载上面的lrc文件就是本段代码了,改后缀py
现在我们先来讲讲我们以前没有学过的内容吧!
appuifw.app.body=lb=appuifw.Listbox(list,dz)
设置程序的界面为列表界面,将列表界面赋值给lb
lb.current()
current()是获得用户点击的值,上面讲到lb是被赋值的列表,lb.current()就是获得lb列表中当前选择的项目
也就是说获得你点击了那一个
kuihua.Listbox(list,dz)
这是将程序的界面定义为列表界面,里面有两个参数,他的格式是:
appuifw.Listbox(列表,动作)
第一个参数是列表,表示这个列表有多少个选项和选项的名称,请参考list的赋值
第二个参数是动作,表示当你在列表上面的某个选项点击确定的时候就执行什么函数,在这里,我们执行的是dz()函数
使用自定义函数的好处就是可以增加代码的可视化程度,方面我们编辑,不然所有代码都集合在一起的话就会变得很乱,一出问题的话,你找起来就会费劲很多了!
在上面的代码中,我们是一运行就出现了列表界面,如果我们想通过菜单来调用的话,我们只需要修改一下上面的代码就可以了
具体代码如下:
代码:
import kuihua,e32
def cn(x):return x.decode("utf-8")
kuihua.app.body=m=kuihua.Text(cn("葵花教程"))
def exit():
appuifw.app.set_exit()
def ts0():
kuihua.note(cn("就喜欢我这么简单呀"),"info")
def fh():
kuihua.app.body=m
def dz():
index=lb.current()
if(index==0):
ts0()
if(index==1):
fh()
def dklb():
kuihua.app.body=lb
list=[cn("喜欢我"),cn("返回")]
kuihua.app.body=lb=appuifw.Listbox(list,dz)
kuihua.app.body=m##
kuihua.app.menu=[(cn("打开列表"),dklb),(cn("退出"),exit)]
from e32 import Ao_lock#加载模块##
lock=Ao_lock()##
kuihua.app.exit_key_handler=lock.signal#定义右键为释放线程
lock.wait()#锁定线程##
这个程序就是列表框的切换了,现在我给大家讲讲他的运行方式吧!
1.加载kuihua和e32模块
2.定义cn函数,函数的功能是将参数解码
3.设置界面为文本界面,并赋值给变量m,界面的内容默认是”悠悠鱼o0教程”
4.定义exit函数,函数的功能是退出
5.定义ts0函数,函数功能是提示一个信息
6.定义fh函数,函数的功能是将界面设置为文本界面
7.定义dz函数,函数的功能是验证列表的点击
8.定义dklb函数,函数的功能是将界面设置为列表界面
9.将列表内容赋值给变量list
10.设置界面为列表界面,并赋值给变量lb,并给予参数,目的是为了加载
11.设置界面为文本界面,因为上一条函数设置成了列表,所以我们设置回来
12.设置左键菜单的项目
13.锁住线程,为了不一闪而过