Quantcast
Channel: Programming Forums
Viewing all articles
Browse latest Browse all 51036

keylistener won't work, keys do not respond

$
0
0
I am making a small game and want to use key listeners. I have used it before but don't have to code and i just can't figure it out again. something about my code is wrong. any help will be greatly appreciated.

package mainclasses;

import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.MouseInfo;
import java.awt.Point;
import java.awt.PointerInfo;
import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;

import javax.swing.ImageIcon;
import javax.swing.JPanel;
import javax.swing.Timer;

public class levelOne extends JPanel implements ActionListener, MouseListener,MouseMotionListener,KeyListener{
	int frameX,frameY,mouseX,mouseY=0;
	String drawX,drawY="";
	mainMenu MainMenu;
	Image bg;
	ImageIcon bgI;
	Rectangle startr=new Rectangle();
	Rectangle backr=new Rectangle();
	Timer t=new Timer(5,this);
	public levelOne(mainMenu mainmenu) {
		this.MainMenu=mainmenu;
		t.start();
		this.setLayout(null);
		this.setBounds(0,0,600,600);
		startr.setBounds(150,189,207,107);
		backr.setBounds(154,355,163,57);
		ImageIcon bgI=new ImageIcon(getClass().getResource("/Images/levelOneBackground.png"));
		bg=bgI.getImage();
		this.addKeyListener(this);
		this.setFocusable(true);
		this.setFocusTraversalKeysEnabled(false);
		this.addMouseMotionListener(this);
		this.addMouseListener(this);
		this.updateUI();
		// TODO Auto-generated constructor stub
	}
	@Override
	public void mouseDragged(MouseEvent arg0) {
		// TODO Auto-generated method stub
		
	}
	public boolean isMouseCollidingWithRectangle(Rectangle l){
		 if(  mouseX>=l.getX() && mouseX<=l.getX()+l.getWidth() && mouseY>=l.getY()&&mouseY<=l.getY()+l.getHeight()){
			 return true;
		 }
		 return false;
	}
	@Override
	public void paint(Graphics g){
		super.paint(g);
		Graphics2D backgroundG =(Graphics2D)g;
		Graphics2D startT =(Graphics2D)g;
		backgroundG.drawImage(bg,0,0,null);
		//if(r){
		//startT.drawString(Integer.toString(mouseX), 40, 40);
		}
	@Override
	public void mouseMoved(MouseEvent arg0) {
		 int frameX = mainMenu.x;
		 int frameY = mainMenu.y;
		 PointerInfo a = MouseInfo.getPointerInfo(); Point b = a.getLocation();  mouseX = (int) b.getX()- frameX; mouseY = (int) b.getY()- frameY-24;	
		 drawX = Integer.toString(mouseX);
		 drawY = Integer.toString(mouseY);
		
	}
	@Override
	public void mouseClicked(MouseEvent e) {
		if(e.getButton()==MouseEvent.BUTTON1){
			if(isMouseCollidingWithRectangle(startr)==true){
				MainMenu.switchToStart();
			}

			if(isMouseCollidingWithRectangle(backr)==true){
				MainMenu.switchToMainFromStart();
			}
		}
		
	}
	@Override
	public void mouseEntered(MouseEvent arg0) {
		// TODO Auto-generated method stub
		
	}
	@Override
	public void mouseExited(MouseEvent arg0) {
		// TODO Auto-generated method stub
		
	}
	@Override
	public void mousePressed(MouseEvent arg0) {
		// TODO Auto-generated method stub
		
	}
	@Override
	public void mouseReleased(MouseEvent arg0) {
		// TODO Auto-generated method stub
		
	}
	@Override
	public void actionPerformed(ActionEvent arg0) {
	repaint();
	this.updateUI();
		
	}
	@Override
	public void keyPressed(KeyEvent e) {
	int key =e.getKeyCode();
	if(key==KeyEvent.VK_SPACE){}
		
	}
	@Override
	public void keyReleased(KeyEvent e) {
		int key =e.getKeyCode();
		if(key==KeyEvent.VK_SPACE){
			System.exit(0);
		}
		
	}
	@Override
	public void keyTyped(KeyEvent arg0) {
		// TODO Auto-generated method stub
		
	}

}


Viewing all articles
Browse latest Browse all 51036

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>