Boa tarde pessoal,
gostaria de saber como faço para criar um evento tal, q quando o usuário clique na minha imagem, gere uma ação de deslocamento da imagem para cima, assim como nos jogos de cartas normais.
pesquisei na internet, mas só encontrei coisas referêntes a botões ¬¬"
segue um resumo do código:
[code]
interface drawable
{
public void draw(Graphics g);
}
class MyPictureInside implements drawable
{
//private Integer valor, naipe;
private Jogador a;
public MyPictureInside(Jogador a)
{
this.a = a;
}
public void draw(Graphics g)
{
//inicialização de variáveis de imagem
//variável para buffer da imagem do baralho
BufferedImage image1 = null;
BufferedImage image_APaus = null;
[...]
BufferedImage image_KPaus = null;
[...]
BufferedImage image_QPaus = null;
[...][...]
try{
image1 = ImageIO.read(new File("Imagens/zbaralho.png"));
//loop para renderizar a mão do jogador
Integer x = 40, y = 80;
for(Integer i=0; i< 15; i++)
{
//3
if(a.cartas.get(i).get_valor()==3)
{
if(a.cartas.get(i).get_naipe()==2)
{
System.out.println("Paus");
image_3Paus = image1.getSubimage(945, 457, 102, 149);
g.drawImage(image_3Paus, x, y, null); //g.drawImage(image1,X,Y, null);
}
}
[...]
//separa as cartas
x+=30;
}
//endloop das 15 cartas
/*Fim Mapeamento da Imagem xnaipes.png*/
}
catch (IOException e)
{
System.out.println(e);
}
//FlowLayout layout = new FlowLayout(FlowLayout.CENTER);
}
}
class MPanel extends JPanel
{
drawable obj = null;
public void setObj(drawable o)
{
this.obj = o;
}
@Override
public void paintComponent(Graphics g)
{
super.setBackground(Color.BLACK);
super.paintComponent(g);
this.obj.draw(g);
}
}
public class VisualCartas {
public VisualCartas(Jogador a, JFrame janela)
{
MPanel f = new MPanel();
f.setObj(new MyPictureInside(a));
janela.add(f);
}
}
[/code]