Teclado Touch

bem pessoal,
consegui criar um TextField em customItem, porém com teclado qwerty, certo até ai td bem!

a unica coisa que eu não estou conseguindo é capturar o codigo das teclas pressionadas no teclado TOUCH, do aparelho…

tipo ao pressionar o numero 1, ele gera um código para mim, porém o teclado touch somente gera o numero 0(zero), para todos os botoes touch pressionado,

pergunta:

qual Método utilizarei para capturar o valor da tecla pressionada em teclado touch?
o keyPressed, não funcionou…

alguem poderia me auxiliar?

Obrigado!

Vc terá que desenhar seu teclado ‘no braço’ e fazer sua lógica de captura de teclas.

Você já tentou usar pointerPressed() para capturar as coordenadas x e y de cada tecla?

[quote=edwagner]Você já tentou usar pointerPressed() para capturar as coordenadas x e y de cada tecla?

[/quote]

sim eu fiz um tecladinho numerico touch, no qual a cada coordenada capturada em pointerPressed(int x, int y), ele acrescentava um numero no textfield, porém eu nao quero usar esse teclado, pois no aparelho ja tem um teclado touch… que eh aquele tecladinho do windows mobile 6.1, o proprio teclado do windows… só q quando eu dou um touch nas teclas não aparecem os respectivos codigos de cada tecla pressionada como keypressed(), porém o pointerPressed(int x, int y) não captura tb suas coordenadas…

será q tem algum comando q ativa o teclado touch do aparelho, para gerar um keycode?

o cliente exigiu q fosse no teclado touch do aparelho :shock:

[quote=ricardobras][quote=edwagner]Você já tentou usar pointerPressed() para capturar as coordenadas x e y de cada tecla?

[/quote]

sim eu fiz um tecladinho numerico touch, no qual a cada coordenada capturada em pointerPressed(int x, int y), ele acrescentava um numero no textfield, porém eu nao quero usar esse teclado, pois no aparelho ja tem um teclado touch… que eh aquele tecladinho do windows mobile 6.1, o proprio teclado do windows… só q quando eu dou um touch nas teclas não aparecem os respectivos codigos de cada tecla pressionada como keypressed(), porém o pointerPressed(int x, int y) não captura tb suas coordenadas…

será q tem algum comando q ativa o teclado touch do aparelho, para gerar um keycode?

o cliente exigiu q fosse no teclado touch do aparelho :shock: [/quote]

Talvez programando diretamento para Windows Mobile vc consiga, mas com J2ME, creio que não…

qual é o aparelho?

o aparelho é o MOTOROLA A3100 é o famoso motorola MOTOSURF

Eu perguntei porque alguns modelos aceitam configurações no JAD, mas este não é o caso. Parece que em J2me não tem jeito. veja este link, tem o codigo para um teclado pronto:
http://wiki.forum.nokia.com/index.php/A_Canvas_Qwerty_Keyboard_For_Touch_Devices.

[quote=edwagner]Eu perguntei porque alguns modelos aceitam configurações no JAD, mas este não é o caso. Parece que em J2me não tem jeito. veja este link, tem o codigo para um teclado pronto:
http://wiki.forum.nokia.com/index.php/A_Canvas_Qwerty_Keyboard_For_Touch_Devices.
[/quote]

esse teclado nokia será que funciona em um aplicativo rodando em aparalho Motorola?
ou melhor, como se faz para configurar essa opção q vc falou no jad?

talvez funcione!

Não sei, testa ai.

[quote]como se faz para configurar essa opção q vc falou no jad?
talvez funcione! [/quote]

Eu não conheço muitas configurações, mas ia procurar para você. Eu sei que a Nokia tem estes atributos que você pode por no JAD:
http://www.forum.nokia.com/document/Java_Developers_Library_v2/?content=GUID-C5D3E0F5-72B9-4EE7-8BA7-20DE4A538FB8.html

A LG tem estes:

MIDlet-Touch-Support: True
UseNativeTextButtons: false
ReverseSoftkeys: false
UseNativeCommands: false
LGE-MIDlet-TargetLCD-Height: 400
LGE-MIDlet-TargetLCD-Width: 240
LGE-MIDlet-Height: 400
LGE-MIDlet-Width: 240
MIDlet-Touch-Support: true
Navi-Key-Hidden: true

Mas não encontrei nada da Motorola, pesquisa ai.

Uma sujestão: Se você não encontrar uma saida em J2ME (parece que não tem), você pode criar um form com um TextField, ou só um TextBox, e usar Display.setCurrent() que o aparelho cuida deste textfield para você e retorna para sua rotina.

Um abraço.

Tenta ver as API específicas do fabricante.