Choque entre 2 labels

3 respostas
Marcello360

estou querendo que uma seta se mova (com o teclado) e se choque com um label parado que no caso sera a resposta certa como faço??

3 Respostas

M

Tem que escrever o código mudando a posição da seta.
E executar esse código em um determinado tempo, assim você terá a seta se movendo pela tela.
Pesquise sobre o Timer. E coloque seu código aqui para conseguir mais ajuda.

Marcello360

não eh ela se movendo só… eh ela se movendo com o teclado ^^

tentei fazer assim:

void tocou(){
		if(labelSeta.getLocation().y == labelSeta2.getLocation().x){
		JOptionPane.showMessageDialog(null, "haaaaaaaaaaaaaaaa");	
		}

mas quando a seta fica com o valor de x da seta 2 entra no if… e longe da imagem

charleston10

Aqui tem um tutorial de como movimentar um jbutton em um JFrame, tambem serve para jLabel..

[url]http://javaaberto.blogspot.com.br/2012/05/movimentar-botao-em-um-jframe.html[/url]

O movimento do seu componente vai depender do seu evento, se usar o MouseDragged vai movimentar com o mouse,
se usar outro pelo teclado, vai movimentar pelo teclado.. enfim.. só escolher o evento atraves das propriedades e aplicar o código.
ai o choque voce faz o código.

pra mudar pra JLabel voce mudar o parametro do método da classe para JLabel jlabel

Assim
public class clsMovimentarObjeto {

    public void movimentar(JButton jBotao, java.awt.event.MouseEvent evt, JFrame frame){
Para
public class clsMovimentarObjeto {

    public void movimentar(JLabel jLabel, java.awt.event.MouseEvent evt, JFrame frame){

da pra ajudar eu acredito..

;]

Criado 13 de agosto de 2012
Ultima resposta 13 de ago. de 2012
Respostas 3
Participantes 3