Drag & Drop é possível em uma aplicação p/ palm usando J

12 respostas
Makiyama

Bom pessoal, a pergunta ja diz tudo. Estou tentando fazer uma aplicação em J2ME que pegue um objeto (uma figura) de uma lista de imagens e o coloque em outro lugar da tela, mas para isso, por exemplo no Flash, tenho que trabalhar com alguns eventos e chamadas. Estes eventos onmouseover,onclick e outros existem no J2ME?? e como eu trato isso com relação as Classes… crio um método mas como identifico que este método é chamado por um evento do mouse…

Bom, é isso, não manjo muito de J2ME mas estou lendo e fuçando muito hehehe…

Abraços.

Makiyama

12 Respostas

urubatan

acho que não da pra fazer, mexi muito pouco com j2me, mas se isto for possivel, provavelmente só seja possivel implementando na unha atravez de um canvas.

Makiyama

Obrigado por responder…

Poxa que pena… mas independente disso, você sabe como detectar eventos num palm, como por exemplo, quando a pessoa clica com a canetinha na tela…? porque aí ja é um bom começo…

Valeu…

Makiyama

aborges

Utilizo J2ME just for fun e pelo q sei, vc soh consegue capturar eventos de CLICK da caneta nos Commands, Lists e afins… Na tela acho q nao eh possivel, pelo simples motivo de celulares nao possuirem este recurso. Como o J2ME quer ser portavel a todas plataformas, nao ha esta implementacao nem pra PalmOs…

Caso eu esteja errado, por favor me corrijam… Esta eh apenas uma conclusao minha. :wink:

Makiyama

Olá man,

Obrigado pela sua resposta…

pois é… ao meu ver esta sua conclusão é bem verdade sim, mas como o que estou pretendendo fazer é bem “animado”. acho que fazer isso com botões não ia dar certo… (ou existe uma maneira, posso estar errado?)
será que com canvas não dá pra fazer isso?? (eu num conheço muito bem de canvas, vocês sabem de algum guia de referencia que me ajude com isso?)

tks ,

Makiyama

aborges

Fiquei curioso com seu post e dei uma olhadina na API do canvas…

Veja o q eu achei… Nao cheguei a implementar, mas acho q resolve seu problema:

pointerDragged

protected void pointerDragged(int x,
int y)

Called when the pointer is dragged. The hasPointerMotionEvents() method may be called to determine if the device supports pointer events. Class Canvas has an empty implementation of this method, and the subclass has to redefine it if it wants to listen this method.

Parameters:
    x - The horizontal location where the pointer was dragged (relative to the Canvas)
    y - The vertical location where the pointer was dragged (relative to the Canvas)

Dando uma goolglada achei isto tb:

Pointer Events

For devices supporting a pointer device such as a stylus, touch screen, or trackball, the Canvas class provides three notification methods: pointerPressed(), pointerDragged(), and pointerReleased(). These methods work similarly to the key event methods, except that they provide two integer parameters, denoting the x and y position of the pointer when the corresponding event occurs. (Please note that pointer support is optional in MIDP, so the application should not rely on the presence of a pointer. Such devices are uncommon for devices such as mobile phones.) The following sample program demonstrates the usage of the three methods:

import javax.microedition.lcdui.*;

class PointerDemoCanvas extends Canvas {

String eventType = “Press Pointer!”;

int x;

int y;
public void pointerPressed (int x, int y) {

eventType = “Pointer Pressed”;

this.x = x;

this.y = y;

repaint ();

}
public void pointerReleased (int x, int y) {

eventType = “Pointer Released”;

this.x = x;

this.y = y;

repaint ();

}
public void pointerDragged (int x, int y) {

eventType = “Pointer Repeated”;

this.x = x;

this.y = y;

repaint ();

}
public void paint (Graphics g) {

g.setGrayScale (255);

g.fillRect (0, 0, getWidth (), getHeight ());

g.setGrayScale (0);

g.drawString (eventType + " " +x +"/"+y,

0, 0, Graphics.TOP|Graphics.LEFT);

g.drawLine (x-4, y, x+4, y);

g.drawLine (x, y-4, x, y+4);

}

}</blockquote>
Makiyama

Meu, primeiro MUITO OBRIGADO…

segundo, era exatamente isso que eu estava procurando. Vou testar aqui no meu ambiente de desenvolvimento e ver ser consigo fazer funcionar…

Valeu!

Makiyama

P

olá, quanto a você saber quando algum objeto passou encima de uma imagem você pode fazer isso tratando imagens, eu fiz um sistema de previsão do tempo instantâneas pra Palm e celular, o usuário tinha um mapa do RS como plano de fundo e um cursor que ficava se movando na tela, usando Sprites do MIDP 2.0 você pode saber quando uma imagem se choca com outra…

Makiyama

Huum… entendi… acho que eu vou acabar usando as duas coisas, pois além de detectar colisão (que é o que vc detectou neste seu projeto) eu vou ter que detectar o evento da canetinha do palm tocando na tela + detecção de colisão de imagens.

Você poderia me passar algum tequinho deste seu código, ou quais classes você usou para detectar isso, ou algo do tipo…??

Valeu,

Daniel Makiyama

P

na MISP 2.0 existe uma classe Sprite, que é um conjunto de quadros (uma imagem falando bem por cima), essa classe tem um método que te diz se o Sprite se colidiu com outro Sprite ou com outra imagem, eu não lembro de cabeça o código e nem estou com ele em mãos… mas foi assim que eu fiz

Makiyama

huum, saquei. Vou tentar fazer uns testes… primeiro vou achar esta MISP 2.0 que eu nunca mexi.

Valeu man,

Daniel Makiyama

P

é MIDP 2.0, desculpe a gafe :oops:

Makiyama

ahh é!!! nem me liguei huhuh… vc escreveu correto na mensagem de cima! brigado cara!!!

Criado 6 de setembro de 2004
Ultima resposta 9 de set. de 2004
Respostas 12
Participantes 4