信息: 其他的 appuifw.app 属性: Tabs , Forms
标签: appuifw.app.set_tabs(tabnames, callback)
标签用来进行程序的页面选择。这里简单介绍了如何创建标签:
- # define application 1: text app
- app1 = appuifw.Text(u'Appliation o-n-e is on')
-
-
- # define application 2: text app
- app2 = appuifw.Text(u'Appliation t-w-o is on')
-
-
- # define application 3: text app
- app3 = appuifw.Text(u'Appliation t-h-r-e-e is on')
-
- def exit_key_handler():
- app_lock.signal()
-
- # create a tab handler that switches the application based on what tab is selected
- def handle_tab(index):
- global lb
- if index == 0:
- appuifw.app.body = app1 # switch to application 1
- if index == 1:
- appuifw.app.body = app2 # switch to application 2
- if index == 2:
- appuifw.app.body = app3 # switch to application 3
-
- # create the tabs with its names in unicode as a list, include the tab handler
- appuifw.app.set_tabs([u"One", u"Two", u"Three"],handle_tab)
示例代码 1: # Copyright (c) 2006 Jurgen Scheible
# This script creates tabs that let you switch between different applications
import appuifw
import e32
from graphics import *
# define application 1: text app
app1 = appuifw.Text(u'Appliation o-n-e is on')
# define application 2: text app
app2 = appuifw.Text(u'Appliation t-w-o is on')
# define application 3: text app
app3 = appuifw.Text(u'Appliation t-h-r-e-e is on')
def exit_key_handler():
app_lock.signal()
# create a tab handler that switches the application based on what tab is selected
def handle_tab(index):
global lb
if index == 0:
appuifw.app.body = app1 # switch to application 1
if index == 1:
appuifw.app.body = app2 # switch to application 2
if index == 2:
appuifw.app.body = app3 # switch to application 3
# create an Active Object
app_lock = e32.Ao_lock()
# create the tabs with its names in unicode as a list, include the tab handler
appuifw.app.set_tabs([u"One", u"Two", u"Three"],handle_tab)
# set the title of the script
appuifw.app.title = u'Tabs'
# set app.body to app1 (for start of script)
appuifw.app.body = app1
appuifw.app.exit_key_handler = exit_key_handler
app_lock.wait()
示例代码 2:
# Copyright (c) 2006 Jurgen Scheible
# This script creates tabs that let you switch between different applications
# listbox app, listbox app and canvas app
import appuifw
import e32
from graphics import *
# define application 1: listobx app
# create your icons for the listbox content
icon1 = appuifw.Icon(u"z:\\system\\data\\avkon.mbm", 28, 29)
icon2 = appuifw.Icon(u"z:\\system\\data\\avkon.mbm", 40, 41)
icon3 = appuifw.Icon(u"z:\\system\\data\\avkon.mbm", 30, 31)
icon4 = appuifw.Icon(u"z:\\system\\data\\avkon.mbm", 32, 33)
icon5 = appuifw.Icon(u"z:\\system\\data\\avkon.mbm", 34, 35)
icon6 = appuifw.Icon(u"z:\\system\\data\\avkon.mbm", 36, 37)
icon7 = appuifw.Icon(u"z:\\system\\data\\avkon.mbm", 38, 39)
# create your content list of your listbox including the icons to be used for each entry
entries = [(u"Signal", icon1),
(u"Battery", icon2),
(u"Sirene", icon3),
(u"Waste", icon4),
(u"Helicopter", icon5),
(u"Train", icon6),
(u"Auto", icon7)]
# create the listbox callback handler
def handler():
print "done"
# create an instance of appuifw.Listbox(), include the content list "entries" and the callback function "handler"
app1 = appuifw.Listbox(entries,handler)
# define application 2: listbox app
# define the list of items as pop-up menu content
L2 = [u"Stefan", u"Holger", u"Emil", u"Ludger"]
# create the listbox callback handler
def handler_L2():
print "ola"
# create the pop-up menu
app2 = appuifw.Listbox(L2, handler_L2)
# define application 3: canvas application
def app_3():
global canvas
img=Image.new((176,208))
img.line((20,20,20,120),0xff00ee)
img.rectangle((40,60,50,80),0xff0000)
img.point((50.,150.),0xff0000,width=40)
img.ellipse((100,150,150,180),0x0000ff)
img.text((100,80), u'hello')
# define your redraw function (still belonging to app 3)
def handle_redraw(rect):
#global canvas
canvas.blit(img)
# define the canvas, include the redraw callback function
canvas =appuifw.Canvas(event_callback=None, redraw_callback=handle_redraw)
appuifw.app.body = canvas
def exit_key_handler():
app_lock.signal()
# create a tab handler that switches the application based on what tab is selected
def handle_tab(index):
global lb
if index == 0:
appuifw.app.body = app1 # switch to application 1
if index == 1:
appuifw.app.body = app2 # switch to application 2
if index == 2:
app_3() # switch to application 3
# create an Active Object
app_lock = e32.Ao_lock()
# create the tabs with its names in unicode as a list, include the tab handler
appuifw.app.set_tabs([u"One", u"Two", u"Three"],handle_tab)
# set the title of the script
appuifw.app.title = u'Tabs advanced'
# set app.body to app1 (for start of script)
appuifw.app.body = app1
appuifw.app.exit_key_handler = exit_key_handler
app_lock.wait()
  
Forms: appuifw.app.form() - # define the content list (consists of tuples: (label, type ,value)); label is a unicode string
- # type is one of the following strings: 'text', 'number', 'date', 'time',or 'combo'
-
- # create a list to be used in 'combo' selection mode
- model = [u'6600', u'6630', u'7610', u'N90', u'N70']
-
-
- data = [(u'Mobile','text', u'Nokia'),(u'Model','combo', (model,0)),(u'Amount','number', 5), (u'Date','date'), (u'Time','time')]
-
- # set the view/edit mode of the form
- flags = appuifw.FFormEditModeOnly
-
- # creates the form
- f = appuifw.Form(data, flags)
-
- # make the form visible on the UI
- f.execute()
更多关于 forms 的参数请查看 Nokia API_Reference_for_python 文档 示例代码:
# Copyright (c) 2006 Jurgen Scheible
# This script creates a form
import appuifw
import e32
# create an Active Object
app_lock = e32.Ao_lock()
def forming():
# create a list to be used in 'combo' selection mode
model = [u'6600', u'6630', u'7610', u'N90', u'N70']
# define the field list (consists of tuples: (label, type ,value)); label is a unicode string
# type is one of the following strings: 'text', 'number', 'date', 'time',or 'combo'
data = [(u'Mobile','text', u'Nokia'),(u'Model','combo', (model,0)),(u'Amount','number', 5),(u'Date','date'),(u'Time','time')]
# set the view/edit mode of the form
flags = appuifw.FFormEditModeOnly
# creates the form
f = appuifw.Form(data, flags)
# make the form visible on the UI
f.execute()
def exit_key_handler():
app_lock.signal()
# set the title of the script
appuifw.app.title = u'Form'
# call the function that creates the form
forming()
appuifw.app.exit_key_handler = exit_key_handler
app_lock.wait() |