Archived:Como usar um ícone em um listbox, em PySymbian
Aquivado: Este artigo foi arquivado, pois o conteúdo não é mais considerado relevante para se criar soluções comerciais atuais. Se você achar que este artigo ainda é importante, inclua o template {{ForArchiveReview|escreva a sua justificativa}}.
All PySymbian articles have been archived. PySymbian is no longer maintained by Nokia and is not guaranteed to work on more recent Symbian devices. It is not possible to submit apps to Nokia Store.
All PySymbian articles have been archived. PySymbian is no longer maintained by Nokia and is not guaranteed to work on more recent Symbian devices. It is not possible to submit apps to Nokia Store.
Do original How to use icon in listbox (Inglês)
Dados do artigo
Testado com
Aparelho(s): Nokia N96
Compatibilidade
Plataforma(s): S60 2ª Edição, S60 3ª Edição
Artigo
Palavras-chave: appuifw
Criado por maiconherverton
em 07 Oct 2009
Última alteração feita por hamishwillee
em 07 May 2013
A linguagem Python fornece vários recursos gráficos para os seus usuários. Um deles é usar ícones no Listbox.
- com Python, usando ícones da 2ª Edição
icon1 = appuifw.Icon(u"z:\\system\\data\\avkon.mbm", 28, 29)
icon2 = appuifw.Icon(u"z:\\system\\data\\avkon.mbm ", 40, 41)
entries = [(u"Signal", icon1),
(u"Battery", icon2)
]
lb = appuifw.Listbox(entries, lbox_observe)
- Python, 3ª Edição : avkon2.mbm é usado em vez de avkon.mbm
icon1 = appuifw.Icon(u"z:\\system\\data\\avkon2.mbm", 28, 29)
icon2 = appuifw.Icon(u"z:\\system\\data\\avkon2.mbm ", 40, 41)
entries = [(u"Signal", icon1),
(u"Battery", icon2)
]
lb = appuifw.Listbox(entries, lbox_observe)
O componente Listbox é um dos 3 tipos de objetos que podem ser atribuídos ao corpo do aplicativo (app.body). Os outros tipos são Text e Canvas. Assim, para executar o código acima, deve-se atribuir a lista ao corpo do aplicativo.
appuifw.app.body = lb
No caso, a função lbox_observe será chamada toda vez que uma seleção for feita.
Note que você pode também usar ícones escaláveis em PySymbian caso esteja executando em S60 2.8 ou superior. Tente executar o seguinte script no shell Python ou modifique-o caso deseje executá-lo independente do shell:
import appuifw
import e32
# Índices do arquivo Symbian\9.1\S60_3rd_MR\Epoc32\include\avkon.mbg
EMbmAvkonQgn_prop_signal_icon = 16412
EMbmAvkonQgn_prop_signal_icon_mask = 16413
EMbmAvkonQgn_prop_battery_icon = 16424
EMbmAvkonQgn_prop_battery_icon_mask = 16425
ICON_FILE = u"z:\\resource\\apps\\avkon2.mif"
def clean():
lock.signal()
icon1 = appuifw.Icon(ICON_FILE,
EMbmAvkonQgn_prop_signal_icon,
EMbmAvkonQgn_prop_signal_icon_mask)
icon2 = appuifw.Icon(ICON_FILE,
EMbmAvkonQgn_prop_battery_icon,
EMbmAvkonQgn_prop_battery_icon_mask)
entries = [(u"Signal", u"Strong", icon1),
(u"Battery", u"Full", icon2)
]
lb = appuifw.Listbox(entries)
appuifw.app.body = lb
lock=e32.Ao_lock()
appuifw.app.exit_key_handler=clean
lock.wait()
Screenshot
Link's relacionados
- How to use Listbox(Inglês)



(no comments yet)