×
Namespaces

Variants
Actions
Revision as of 04:07, 31 May 2013 by hamishwillee (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Archived:Como usar um ícone em um listbox, em PySymbian

From Nokia Developer Wiki
Jump to: navigation, search

Archived.pngAquivado: 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.

Do original How to use icon in listbox (Inglês)

Article Metadata

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 31 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

Listbox com ícones















Link's relacionados

This page was last modified on 31 May 2013, at 04:07.
186 page views in the last 30 days.