Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1214 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [IHM] Comment faire une barre d'etat ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[IHM] Comment faire une barre d'etat ?

n°778433
boubavic
Posté le 25-06-2004 à 18:08:42  profilanswer
 

Salut,
 
 
J'aimerai savoir comment faire une barre d'etat comme celle de Internet Explorer ou de Eclipse.
 
Avec certaines partie de la barre qui ont des emplacements fixe (de taille et localisation).
 
Pour le moment, je pensais utiliser un JPanel je place en dans le container de la frame principale (avec un BorderLayout, et donc en SOUTH) mais je ne vois pas quel gestionnaire utiliser pour placer de maniere fixé les composants a l'interieur de la barre d'etat.
 
En fait, je voudrai avoir dans ma barre d'etat des indications comme l'etat du bouton Caps Lock, Num Lock, l'heure etc.
 
Si vous avez une idée ca serait cool (peut etre utiliser des positions absolut ??? )
 
Merci

mood
Publicité
Posté le 25-06-2004 à 18:08:42  profilanswer
 

n°779309
veryfree
Posté le 26-06-2004 à 20:59:02  profilanswer
 

ben un simple textField suffis:
 

Code :
  1. public class StatusBar extends JPanel
  2. {
  3. private JTextField tf;
  4.  public  StatusBar()
  5.  {
  6.   super(new BorderLayout());
  7.   tf = new JTextField();
  8.   tf.setFont(new Font("Verdana",Font.PLAIN,11));
  9.     tf.setEnabled(false);
  10.     add(tf,"South" );
  11.  }
  12.  public void setText(String text)
  13.  {
  14.   tf.setText(text);
  15.  }
  16. }


Message édité par veryfree le 26-06-2004 à 20:59:40
n°783893
boubavic
Posté le 01-07-2004 à 17:55:03  profilanswer
 

bon ben j'arrive toujours pas a faire fonctionner ma barre d'etat...
 
Je n'arrive pas a recuperer les evements clavier ...ce qui est assez bizarre ...
 
voila ce que je fais :  

Code :
  1. public class Principale extends JFrame implements ActionListener, KeyListener,OutlookBarSelectionListener  {
  2. /*...*/
  3. public Principale () {
  4. /*...*/
  5. getContentPane().addKeyListener(new KeyAdapter(){
  6.   public void keyPressed(KeyEvent e)
  7.   {
  8.    System.out.println("KeyEvent.VK_NUM_LOCK : "+KeyEvent.VK_NUM_LOCK);
  9.    System.out.println("KeyEvent.VK_CAPS_LOCK : "+KeyEvent.VK_CAPS_LOCK);
  10.    //evenement modif caps lock  
  11.    if (e.getKeyCode() == KeyEvent.VK_CAPS_LOCK) {
  12.     System.out.println("detecté CAPS_LOCK" );
  13.     statusBar.toggleStateMaj();
  14.    }
  15.    //evenement modif num pad  
  16.    if (e.getKeyCode() == KeyEvent.VK_NUM_LOCK) {
  17.     System.out.println("detecté NUM_LOCK" );
  18.     statusBar.toogleStateNum();
  19.    }
  20.   }
  21.  }
  22.  );
  23. /*...*/
  24. }
  25. /*...*/
  26. }


 
Ce qui a priori devrait au moins m'afficher ca :

Code :
  1. System.out.println("KeyEvent.VK_NUM_LOCK : "+KeyEvent.VK_NUM_LOCK);
  2. System.out.println("KeyEvent.VK_CAPS_LOCK : "+KeyEvent.VK_CAPS_LOCK);


 
quand j'appuie sur une touche ...mais rien du tout ...
 
Des idees ?
 
PS : les fonctions toogleXXX() permettent comme leur nom l'indique de changer la chaine affiché dans la barre d'etat.

n°784429
boubavic
Posté le 02-07-2004 à 10:28:49  profilanswer
 

up ! ;)

n°978456
Lideln
Posté le 11-02-2005 à 11:38:32  profilanswer
 


 
Salut !!
 
 
Ben en fait j'ai EXACTEMENT le même problème, et j'arrive pas à catcher les événements clavier.
 
Si quelqu'un a la solution... je suis preneur :)
Merci !
 
ps : mon code est grosse.... grosso modo le meme que celui de boubavic

n°978839
replix
Posté le 11-02-2005 à 15:33:31  profilanswer
 

Utilise plutôt un KeyEventDispatcher qui va recevoir tout les évènements, focus ou non.
 

Code :
  1. DefaultKeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventDispatcher(
  2.                 new KeyEventDispatcher() {
  3.                     public boolean dispatchKeyEvent(KeyEvent e) {
  4.                         System.out.println(e);
  5.                         return false;
  6.                     }
  7.                 }
  8.         );

n°979195
Lideln
Posté le 11-02-2005 à 22:47:15  profilanswer
 

Merci replix !
 
 
En fait, j'avais entre-temps opté pour une autre solution (vu que je veux juste l'état de 3 touches) : j'ai utilisé un timer (j'en avais de toutes facons besoin) qui vérifie a intervalles réguliers l'état de ces touches.
 
Mais merci pour la réponse, ca me servira surement ailleurs (et pas qu'a moi d'ailleurs !)  :)  
 
merci, a+


Message édité par Lideln le 11-02-2005 à 22:47:44
n°979196
WhatDe
Posté le 11-02-2005 à 22:51:50  profilanswer
 

Lideln a écrit :

Merci replix !
 
 
En fait, j'avais entre-temps opté pour une autre solution (vu que je veux juste l'état de 3 touches) : j'ai utilisé un timer (j'en avais de toutes facons besoin) qui vérifie a intervalles réguliers l'état de ces touches.
 
Mais merci pour la réponse, ca me servira surement ailleurs (et pas qu'a moi d'ailleurs !)  :)  
 
merci, a+


 [:mlc]  
 
Pas très efficace tout ca.

n°979223
Lideln
Posté le 11-02-2005 à 23:23:30  profilanswer
 

WhatDe a écrit :

[:mlc]  
 
Pas très efficace tout ca.


 
Heuuuu pourrais tu expliquer pourquoi stp ?
De toutes facons je suis obligé d'utiliser le timer, alors pk pas ? mais qu'est ce qui est si lourd la dedans ?


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [IHM] Comment faire une barre d'etat ?

 

Sujets relatifs
optimisation ihmASP-Barre de progression
[frame] pb avec barre de defilement du basPb : Comment afficher un texte dans une état access avec code VBA
ACCESS: historiser un etat access sous format PDF ???[Flash] getUrl --> Affichage de l'url dans la barre d adresse
Ouvrir un état on modification et l'imprimer +eurs fois.Console VS IHM
barre de défilement et JTableCacher la barre eurovalue au lancement
Plus de sujets relatifs à : [IHM] Comment faire une barre d'etat ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR