Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

REGLE FRAME


Information sur la source

Catégorie :Divers Classé sous : jframe, regle, keylistener Niveau : Débutant Date de création : 29/01/2003 Date de mise à jour : 24/03/2003 14:37:04 Vu : 3 050

Note :
Aucune note

Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note

Description

Ce code permet de connaitre les dimensions et la position d'une fenêtre à créer sans passer par une phase de tatonement.
 

Source

  • import java.awt.*;
  • import javax.swing.*;
  • import java.awt.event.*;
  • //pour traiter les evenements des touches
  • class RegleFrame extends JFrame implements KeyListener
  • {
  • /* dim est une variable d'interception des actions du clavier, servant à choisir les paramétres du frame à régler
  • h pour la hauteur
  • l pour la largeur
  • x pour la position horizontale de la fenêtre
  • y pour la position verticale de la fenêtre
  • */
  • char dim;
  • /* Les paramètres du frame sont la largeur, la hauteur,x pour la position horizontale de la fenêtre et y pour la position verticale de la fenêtre
  • */
  • int largeur=300;
  • int hauteur=300;
  • int x=0;
  • int y=0;
  • // Les touches "-" et "+" diminuent ou augmentent les paramètres ci-dessus cités
  • JLabel label_x;
  • JLabel label_y;
  • JLabel label_hauteur;
  • JLabel label_largeur;
  • RegleFrame()
  • {
  • Container pane=getContentPane();
  • pane.setLayout(new FlowLayout());
  • label_x=new JLabel("X="+x);
  • label_y=new JLabel("y="+y);
  • label_hauteur=new JLabel("hauteur="+hauteur);
  • label_largeur=new JLabel("largeur="+largeur);
  • pane.add(label_x);
  • pane.add(label_y);
  • pane.add(label_hauteur);
  • pane.add(label_largeur);
  • addKeyListener(this);
  • addWindowListener(new WindowAdapter()
  • {
  • public void windowClosing(WindowEvent e)
  • {
  • System.exit(0);
  • }
  • });
  • setBounds(x,y,largeur,hauteur);
  • }
  • public void keyPressed(KeyEvent evt){ }
  • public void keyReleased(KeyEvent evt){}
  • public void keyTyped(KeyEvent evt) // interception des touches du clavier
  • {
  • switch (evt.getKeyChar())
  • {
  • case 'h': dim='h';
  • break;
  • case 'l': dim='l';
  • break;
  • case 'x': dim='x';
  • break;
  • case 'y': dim='y';
  • break;
  • }
  • if (evt.getKeyChar()=='+')
  • {
  • switch (dim)
  • {
  • case 'h': hauteur+=1;
  • break;
  • case 'l': largeur+=1;
  • break;
  • case 'x': x+=1;
  • break;
  • case 'y': y+=1;
  • break;
  • }
  • }
  • else if (evt.getKeyChar()=='-')
  • {
  • switch (dim)
  • {
  • case 'h': hauteur-=1;
  • break;
  • case 'l': largeur-=1;
  • break;
  • case 'x': x-=1;
  • break;
  • case 'y': y-=1;
  • break;
  • }
  • }
  • }
  • setBounds(x,y,largeur,hauteur);
  • label_x.setText("X="+x);
  • label_y.setText("Y="+y);
  • label_hauteur.setText("hauteur="+hauteur);
  • label_largeur.setText("largeur="+largeur);
  • }
  • public static void main (String[] args)
  • {
  • RegleFrame fenetre = new RegleFrame();
  • fenetre.setVisible(true);
  • }
  • }
import java.awt.*;
import javax.swing.*;
import  java.awt.event.*;

//pour traiter les evenements des touches
class RegleFrame extends JFrame  implements KeyListener
{
         /*  dim est une variable d'interception des actions du clavier, servant à choisir les paramétres du frame à régler
	h pour la hauteur
	l pour la largeur
	x pour la position horizontale de la fenêtre
	y pour la position verticale de la fenêtre
         */	
         char dim;

          /* Les paramètres du frame sont la largeur, la hauteur,x pour la position horizontale de la fenêtre et  y pour la position verticale de la fenêtre
          */

          int largeur=300;
          int hauteur=300;
          int x=0;
          int y=0;

          // Les touches "-" et "+" diminuent ou augmentent les paramètres ci-dessus cités
          JLabel label_x;
          JLabel label_y;
          JLabel label_hauteur;
          JLabel label_largeur;	

  RegleFrame()
  {
         Container pane=getContentPane();
         pane.setLayout(new FlowLayout());
         label_x=new JLabel("X="+x);
         label_y=new JLabel("y="+y);
         label_hauteur=new JLabel("hauteur="+hauteur);
         label_largeur=new JLabel("largeur="+largeur);

	
         pane.add(label_x);
         pane.add(label_y);
         pane.add(label_hauteur);
         pane.add(label_largeur);
         addKeyListener(this);
    
        addWindowListener(new WindowAdapter() 
         {
                 public void windowClosing(WindowEvent e)
                 { 
                       System.exit(0);  
                  }
            });
    
    setBounds(x,y,largeur,hauteur);
  }

  public void keyPressed(KeyEvent evt){ }
  public void keyReleased(KeyEvent evt){}  
  public void keyTyped(KeyEvent evt)             // interception des touches du clavier
     {
     switch (evt.getKeyChar())
           {
	case 'h': dim='h';
     	break;
    	case 'l': dim='l';
    	break;
	case 'x': dim='x';
   	break;		
	case 'y': dim='y';
	break;
          }


         if (evt.getKeyChar()=='+')
         {
         switch (dim)
       	{
	      case 'h': hauteur+=1;
       	      break;
    	      case 'l': largeur+=1;
      	      break;
	      case 'x': x+=1;
      	      break;		
	      case 'y': y+=1;
	      break;
	 }
         }
       else if (evt.getKeyChar()=='-')
       {
              switch (dim)
              {
	     case 'h': hauteur-=1;
      	     break;
  	     case 'l': largeur-=1;
                     break;
	     case 'x': x-=1;
      	     break;		
	     case 'y': y-=1;
	     break;
	}

       }


      }
           setBounds(x,y,largeur,hauteur);
           label_x.setText("X="+x);
           label_y.setText("Y="+y);
           label_hauteur.setText("hauteur="+hauteur);
           label_largeur.setText("largeur="+largeur);
}

  
 
  public static void main (String[] args)
  {
   RegleFrame fenetre  = new RegleFrame();
   fenetre.setVisible(true);
  }
}
  

Commentaires et avis

Aucun commentaire pour le moment.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Urgentissime... KeyListener JWindow [ par Polux6 ] Bonjour tous le monde. I have a big problemJe n'arrive pas mettre un écouteur de clavier sur ma jwindowQuand je fais une JFrame ca marche nickel mais KeyListener JFrame avec plusieurs composants [ par mouss11 ] Bonjour, J'ai une JFrame avec plusieurs composant dedans, par exemple une JList et des JButtonRadio.J'ai un JButton OK et un CancelJ'aimerai que l'app JFrame, Keylistener et Interface [ par Kazhyi ] Bonjour a tous, en ce moment je travail sur un projet de RPG en java, et je vien de me retrouver en face d'un gros probleme, J'ai programmé une i Afficher Tableau D'image !!! [ par mimilavitrine ] Bonjour a tous, J'ai un tableau d'ImageIcon que je voudrait afficher dans une JFrame  Or je ne trouve pas de fonction qui permet de placer ce T Création dynamique de label pour une interface graphique en java [ par projetmarie ] Bonjour à tous,J'ai des petits problèmes pour la création de mon interface. En fait je souhaite réaliser une interface dynamiqueme exception lors de l'exécution d'une jframe [ par aminix23 ] bonjour, après exécution, lerreur suivante s'affiche:java.lang.ArrayIndexOutOfBoundsException: 100j'ai utilisé Jtable et une matrice... image au centre d'une JFrame [ par sdailly ] Comment intégrer une image au centre (milieu) d'une JFrame ? Probleme d'affichage dans une JFrame !!!!!!!!!!!!!!!!!!!!!!! [ par mimilavitrine ] Bonjour a tous , La question que je risque de poser parrait assez stupide mais je n'arrive pas a trouvé la bonne fonction dans JPanel Je vou 2 JFrame [ par CHKDSK2K ] Bonjour à tous, Voilà j'ai un probleme j'ai une JFrame quand je clique sur un JButton il ouvre une 2ème JFrame et je voudrais qu'elle r Supprimer des elements en swing [ par IceFinger ] Bonjour, dans le contexte suivant:       public static void main(String[] args) {     JFrame f= new JFrame("unit


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,359 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.