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 !

Sujet : Listener JCombobox [ Divers / Général ] (Guegue85)

jeudi 27 juillet 2006 à 21:21:41 | Listener JCombobox

Guegue85

Bonsoir,

Voilà, j'ai une JCombobx, dans laquelle il y a une liste de choix. Au depart, la combo affiche un item du style "Choisissez la ville". Je voudrais que lorsque l'on clique sur la combo, cet item disparaisse.

Je ne sais pas quel Listener utilisé, car ActionListener se lance une fois qu'on a selectionner un item et MouseListener n'est pas operationnel quand on clique sur la fleche de droite de la Combobox.

Si quelqu'un a une idée, je le remercie

Bonne soirée

samedi 29 juillet 2006 à 23:57:43 | Re : Listener JCombobox

ObiWanKennedy

Salut, j'ai essayé de faire ce que tu dis je n'y suis pas arriver j'ai essayer avec

MouseListener,ActionListener,ListDataListener,MouseMotionListener  aucun ne réagit lors du clique sur la flèche. Parcontre j'ai implémenté ma classe avec un focuslistener et il réagit lors du clique sur la combobox dans le cas ou elle n'etait pas séléctionné donc si tu as un formulaire avec plusieurs champs sa reste jouable. lors du clique sur la combobox tu reçoit le message que l'utilisateur à placer son "focus" sur la liste déroulante. Donc qu'il clique sur la flèche où le reste pour dérouler la liste celà t'enverra le message. (et tu peux s'avoir si il perds le "focus") Je te file vite fait le code que j'ai fais pour tester ça il y a de classe un main et une classe qui hérite de Jcombobox voilà j'espere que cela t'aidera.



 

import

javax.swing.JFrame;

import

javax.swing.JPanel;

import

javax.swing.JTextField;

 

 

 

public

class ecouteur {

/**

*@paramargs

*/

publicstaticvoid main(String[] args) {

JFrame mafenetre =

new JFrame("Ma fenetre");

String[] machaine = {

"bonjour","tout le monde"};

mon_combo lecombo =

new mon_combo(machaine);

JPanel monpanno =

new JPanel();

JTextField mon =

new JTextField("salut");

mafenetre.setDefaultCloseOperation (JFrame.

EXIT_ON_CLOSE);

mafenetre.setSize(600,400);

lecombo.setVisible(

true);

monpanno.add(lecombo);

monpanno.add(mon);

//monpanno.addMouseListener(this);

monpanno.setVisible(

true);

mafenetre.getContentPane().add(monpanno);

mafenetre.setVisible(

true);

}

}

//////////////////////////////// fin de la class main //////////////////////

import

java.awt.event.ActionEvent;

import

java.awt.event.ActionListener;

import

java.awt.event.FocusEvent;

import

java.awt.event.FocusListener;

import

java.awt.event.MouseEvent;

import

java.awt.event.MouseListener;

import

java.awt.event.MouseMotionListener;

import

javax.swing.JComboBox;

import

javax.swing.event.ListDataEvent;

import

javax.swing.event.ListDataListener;

 

public

class mon_combo extends JComboBox implements MouseListener,

ActionListener,ListDataListener,MouseMotionListener,FocusListener {

/**

*

*/

privatestaticfinallongserialVersionUID = 1L;

publicvoid mouseClicked(MouseEvent arg0) {

System.

out.println("ici1");

}

publicvoid mouseEntered(MouseEvent arg0) {

System.

out.println("ici2");

}

publicvoid mouseExited(MouseEvent arg0) {

System.

out.println("ici3");

}

publicvoid mousePressed(MouseEvent arg0) {

System.

out.println("ici4");

}

publicvoid mouseReleased(MouseEvent arg0) {

System.

out.println("ici5");

}

public mon_combo(String[] a)

{

super(a);

this.addMouseListener(this);

this.addFocusListener(this);

this.addMouseMotionListener(this);

}

publicvoid contentsChanged(ListDataEvent arg0) {

System.

out.println("ici6");

}

publicvoid intervalAdded(ListDataEvent arg0) {

System.

out.println("ici7");

}

publicvoid intervalRemoved(ListDataEvent arg0) {

System.

out.println("ici8");

}

publicvoid actionPerformed (ActionEvent evt)

/*

* Ecouteur d'action.Toutes les actions faîtes par l'utilisateur

* sont attrapé ici

*

*/

{

System.

out.println("ici9");

}

publicvoid mouseDragged(MouseEvent arg0) {

System.

out.println("ici10");

}

publicvoid mouseMoved(MouseEvent arg0) {

System.

out.println("ici11");

}

publicvoid focusGained(FocusEvent arg0) {

System.

out.println("ici12");

}

publicvoid focusLost(FocusEvent arg0) {

System.

out.println("ici13");

}

}

Bon je n'ai mis que des affichages console. bete et méchant ce n'est pas tres classe (désolé je sors (classe java jeu de mot ))  mais bon il te restera à effectuer le codage de temps fonctions bon je pense que celà ne correspond pas à 100 % a ton souhait mais en réfléchissant un peu tu dois pouvoir donné a ton application le comportement que tu veux.

I am a heap of shit to human appearance

jeudi 3 août 2006 à 11:27:40 | Re : Listener JCombobox

Kouikoui

Salut,

Je pense qu'un ItemListener pourrait résoudre ton problème ...
Essaye de faire comme ca

Ta classe implémente ItemListener, il te faut donc ajouter cette méthode :

public void itemStateChanged(ItemEvent e)
    {
        if(e.getSource()==cbo && cbo.getItemAt(0)=="Choisissez la ville")
        {
            cbo.remove(0);
        }
    }

Je suis pas sur a 100 % que le 0 soit la premiere position d'une JComboBox, si ce n'est pas 0, ce sera donc 1 ... ;)

Espérant que cela t'aura aidé,

Kouikoui



Cette discussion est classé dans : item, combo, clique, jcombobox, listener


Répondre à ce message

Sujets en rapport avec ce message

Enlever et ajouter des items [ par Leneuf8000 ] SltJ'aimerai ajouter un item sélectionné dans une JComboBox dans une autre JComboBox! et vice versa!Bien sur il faut que l item soit enlever de la lis JComboBox et BD Access [ par BettyLaurent ] Salut,Je suis nouvelle et en dernière année graduat. je travaille sur mon projet de fin d'études. Gestion d'une base de données icones.Je travaille listener JComboBox [ par flammeon ] bonjour, j'aimerai savoir si il existe un listener qui est appelé quand on tape du texte dans une JComboBox editable. J'ai une liste et j'aimerai la r Affichage JcomboBox [ par maxpog23 ] Salut à tous,J'aurai voulu savoir si c'était possible d'avoir une combo dont la liste déroulante (quand on clique dessus) est plus longue que la combo Probleme affichage JCombo [ par jerrypiraz ] Bonjour, mon probleme est le suivant : Je fabrique plusieurs Jcombo que j'ajoute a un panel dynamiquement, c'est à dire qu'il creé un certains nombre Probleme sur JComboBox [ par le_barisien ] J'ai une JComboBox et en fonction de l'Item choisi j'ai envie de rafraîchir le contenu d'un JTable.J?arrive à définir un écouteur sur l'ensemble de la tooltiptext pour chaque item dans un Jcombobox [ par mouzart ] Slt tt le monde, Je voudrais savoir si qlq sait comment faire pour afficher un tooltiptext pour chaque item dans un Jcombobox (lorsque on met la souri jcombobox null pointer [ par abousaid ] Bonjour, J'ai créer pour mon client FTP une interface graphique dans laquelle j'ai, entre autres, essayé d'afficher les fichiers du client.Pour cela j Eclipse Plugin : couper temporairement un listener [ par AlexN ] Salut,le topo :J'ai un composant (un combo) sur lequel est placé un modifyListener. Je voudrais pouvoir faire un combo.select(0) qui ne déclanche pas le composant JComboBox [ par papillon2000 ] bonjour, je veux utiliser le composant JComboBox dans mon programme,et je récupére l'item selectioner dans un variable,mais le probléme la variable co


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version


LG KP501

Entre 9€ et 159€


Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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,421 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é.