hallo leute ich hoffe ihr könnt mir bei folgendem problem helfen:
ich habe wie der name schon sagt einen JFrame mit JPanel der Runnable Funktion und KeyListener
jedoch reagiert der KeyListener nicht (vermudlich endlosschleife in der Runnable Funktion)
hier einmal der stark verkürzte Quellcode:
ich hänge jetzt schon seit na Stunde bei google rum und finde auch immer mal wieder mögliche lösungen
jedoch hat mir bisher keine geholfen
ich hoffe mir kann jemand helfen wie ich den KesListener parallel zur Runnable schleife laufen lassen kann
ich bin noch ein ziemlicher anfänger und arbeite erst seit ca. 3 wochen mit Java
also bitte keine zu komplizierte Fachsprache
LG Keyone und Vielen dank schonmal
ich habe wie der name schon sagt einen JFrame mit JPanel der Runnable Funktion und KeyListener
jedoch reagiert der KeyListener nicht (vermudlich endlosschleife in der Runnable Funktion)
hier einmal der stark verkürzte Quellcode:
Java:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class GamePanelV2 extends JPanel implements KeyListener,Runnable
{
JFrame frame;
JPanel p = new JPanel();
boolean up = false;
public static void Main(String[] args){
new GamePanel();
}
public GamePanelV2(){
this.setPreferredSize(new Dimension(800,600));
JFrame frame = new JFrame("Test");
frame.setLocation(100,100);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(this);
frame.pack();
frame.setFocusable(true);
frame.setVisible(true);
Thread th = new Thread(this);
th.start();
}
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_UP){
up = true;
}
}
public void keyReleased(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_UP){
up = true;
}
}
public void run(){
while(true){
repaint();
}
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawString(""+up, 20, 10); //gibt immer nur "false" wieder
}
public void keyTyped(KeyEvent e) {
}
}
ich hänge jetzt schon seit na Stunde bei google rum und finde auch immer mal wieder mögliche lösungen
jedoch hat mir bisher keine geholfen
ich hoffe mir kann jemand helfen wie ich den KesListener parallel zur Runnable schleife laufen lassen kann
ich bin noch ein ziemlicher anfänger und arbeite erst seit ca. 3 wochen mit Java
also bitte keine zu komplizierte Fachsprache
LG Keyone und Vielen dank schonmal