Interface graphique
hamzadu57000
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
math 2000 Messages postés 2605 Date d'inscription Statut Membre Dernière intervention -
math 2000 Messages postés 2605 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je dois créer un programme Java capable de controler le déplacement d'un carré rouge 10*10 pixel dans une fenetre. Il doit ce deplacer d'un pas de 10 pixel dans les 4 direction et on dois controler sa direction a l'aide des boutons (z=haut,s=bas,q=gauche,d=droite)
mon soucis est j'ai bien programmer les keyListener pour la gestion des touche mais mon carré ne boouge pas, avez vous une soolution Voici mon code source ci dessous !
Merci !
Code source
2 class ==>1er class :
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Carre extends JPanel implements KeyListener {
public Carre(){
int x=getHeight()/2;
int y=getWidth()/2;
KeyListener kl=new KeyListener(){
Graphics g = getGraphics ();
public void keyTyped(KeyEvent e){
}
public void keyReleased(KeyEvent e){
}
public void keyPressed(KeyEvent e){
char c=e.getKeyChar();
if(c=='z'){
g.fillRect(getX(),getY()+10,10,10);
repaint();
}
if(c=='s'){
g.fillRect(getX(),getY()-10,10,10);
repaint();
}
if(c=='q'){
g.fillRect(getX()-10,getY(),10,10);
repaint();
}
if(c=='d'){
g.fillRect(getX()+10,getY(),10,10);
repaint();
}
}
};
addKeyListener(kl);
}
@Override
public void keyPressed(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
public void paintComponent(Graphics g){
super.paintComponent(g);
g.setColor(Color.red);
int h=getHeight();
int w=getWidth();
int x=w/2;
int y=h/2;
g.fillRect(x,y,10,10);
}
}
et 2eme class :
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Principale{
public static void main(String[]args){
JFrame fenetre =new JFrame("Carre rouge");
fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Carre dessin=new Carre();
dessin.setPreferredSize(new Dimension(600,480));
fenetre.setContentPane(dessin);
fenetre.pack();
fenetre.setVisible(true);
dessin.requestFocus();
}
}
Je dois créer un programme Java capable de controler le déplacement d'un carré rouge 10*10 pixel dans une fenetre. Il doit ce deplacer d'un pas de 10 pixel dans les 4 direction et on dois controler sa direction a l'aide des boutons (z=haut,s=bas,q=gauche,d=droite)
mon soucis est j'ai bien programmer les keyListener pour la gestion des touche mais mon carré ne boouge pas, avez vous une soolution Voici mon code source ci dessous !
Merci !
Code source
2 class ==>1er class :
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Carre extends JPanel implements KeyListener {
public Carre(){
int x=getHeight()/2;
int y=getWidth()/2;
KeyListener kl=new KeyListener(){
Graphics g = getGraphics ();
public void keyTyped(KeyEvent e){
}
public void keyReleased(KeyEvent e){
}
public void keyPressed(KeyEvent e){
char c=e.getKeyChar();
if(c=='z'){
g.fillRect(getX(),getY()+10,10,10);
repaint();
}
if(c=='s'){
g.fillRect(getX(),getY()-10,10,10);
repaint();
}
if(c=='q'){
g.fillRect(getX()-10,getY(),10,10);
repaint();
}
if(c=='d'){
g.fillRect(getX()+10,getY(),10,10);
repaint();
}
}
};
addKeyListener(kl);
}
@Override
public void keyPressed(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
public void paintComponent(Graphics g){
super.paintComponent(g);
g.setColor(Color.red);
int h=getHeight();
int w=getWidth();
int x=w/2;
int y=h/2;
g.fillRect(x,y,10,10);
}
}
et 2eme class :
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Principale{
public static void main(String[]args){
JFrame fenetre =new JFrame("Carre rouge");
fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Carre dessin=new Carre();
dessin.setPreferredSize(new Dimension(600,480));
fenetre.setContentPane(dessin);
fenetre.pack();
fenetre.setVisible(true);
dessin.requestFocus();
}
}
A voir également:
- Interface graphique
- Changer carte graphique - Guide
- Graphique sparkline - Guide
- Graphique camembert excel - Guide
- Comment faire un graphique sur excel - Guide
- Ventilateur carte graphique ne tourne pas - Forum Carte graphique