>>> Let's run Python on Mobile

วันพุธ, กันยายน 14, 2548

muti_selection_list

Python for Symbian
muti_selection_list ก็เป็นอีก GUI หนึ่ง ในโมดูล appuifw
ลักษณะของ muti_selection_list มีคล้ายๆกันกับ selection_list แตกต่างตรงที่ muti_selection_list นี้ อนุญาตให้ user
เลือกตัวเลือกจาก listได้หลายตัวเลือก
ค่าที่ return กลับมาจะเป็น list ของตัวเลข index บอกว่า user เลือกตัวเลือก ลำดับที่เท่าไรไปบ้าง
วิธีใช้ muti_selection_list
เราก็ต้องสร้าง list (ของตัวอักษรUnicode String) ขึ้นมาก่อน เช่น จากตัวอย่างข้างล่างเป็น list ชื่อ txt
เราสามารถ สร้าง multi_selection_list ขึ้นมาด้วยคำสั่ง
appuifw.multi_selection_list(txt)
ลองมาดูตัวอย่าง code เต็มๆกัน
import appuifw,e32
def multi():
     z=appuifw.multi_selection_list(txt)
     if z is not None:
         for index in z:
             My_Screen.add(txt[index]+'\n'+u'')
def clear_screen():
     My_Screen.clear()
     appuifw.note(u'Clear text on screen','info')
def stop_now():
     a.signal()
txt=[u'January',u'February',u'March',u'April',u'May',u'June',u'July',
u'August',u'September',u'October',u'November',u'December']
appuifw.app.title=u'test22'
My_Screen=appuifw.Text()
appuifw.app.body=My_Screen
My_Screen.set(u'Work on Multiselection List\n')
appuifw.app.menu=[(u'multiselection list',multi),(u'clear screen',clear_screen)]
appuifw.app.exit_key_handler=stop_now
a=e32.Ao_lock()
a.wait()

จากตัวอย่าง txt เป็น list ของ Unicode string (เดือนที้ง12)
ค่าที่ return กลับมา ยังตัวแปล z จะเป็น list ของตัวเลข index
เราใช้ for เรียก ตัวเลข index แต่ละตัวใน z ออกมา
แล้วไปเทียบดู แต่ละค่าใน txt


ตัวอย่าง code
test22.zip

หน้าถัดไป>>>
หน้าก่อน
กลับไปหน้าหลัก