Problema com Canvas

[quote=vfmartins][quote=j0nny]Tirou a instanciação de dentro do paint()?
Ele executa normal no emmulador?
Qq coisa, posta aí como vc fez.[/quote]

tirei, testei todas as formas, mas sempre da esse atraso
no emulador funciona, mas pelo command, não consigo testar o touch
mas no palm funciona de todas as maneiras

segue meu código (que funciona no palm e no nokia tfunciona com atraso)

protected void pointerPressed(int x, int y){ if (img01.isTouched(x, y)) repaint(); }

protected void paint(Graphics g){ repinta(); }

[code]public void repinta(){
// Re-define a cor que será usada no label dos botões
int corPreto = 0x00000000;

// Re-define a fonte que será usada no label dos botões   
Font fonteBotao = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN, Font.SIZE_SMALL);   

// Re-define a imagem que será usada nos botões   
Image image01 = getImg01();   

// Re-define botões e posicionamento   
img01 = new ButtomImage(212, 18, image01, this, "", corPreto, fonteBotao);   

// Pinta a tela   
g.setColor(0x00ffffff);   
g.fillRect(0, 0, getWidth(), getHeight());   
g.setColor(0x00000000);   
g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN, Font.SIZE_SMALL));   

img01.paint(g);

}[/code][/quote]

Cara, mas vc continua instanciando seu botao no paint() :roll:

mas como ele vai aparecer na tela se não for assim?

Cara, faz do seu botao um atributo da classe Form, instancia em algum lugar fora do paint(), e sempre repinta ele no paint() do form.

tentei tbm desta maneira, mas o resultado é o mesmo.

fiz uma outra tentativa, somente com uma tela, sem botões, era para simplesmente carregar a tela canvas de uma classe para outra tela canvas de outra classe, mas tbm aconteceu o mesmo
o estranho é que na segunda tela eu adicionei um command.Back, aí ele mostrou a tela diretamente, mas da primeira para a segunda ele carrega e não mostra, só mostra depois que executa outra ação

será que não vai funcionar corretamente nesse aparelho?

Pessoal, consegui resolver essa situação utilizando serviceRepaints()

Agradeço a disponibilidade em me ajudar!

ahh, esse link tbm fala algo sobre o problema!!

http://www.guj.com.br/posts/list/15824.java

Abraços!!