begin process at 2010 02 10 06:08:49
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Débutant(e)

 > 

liste de mots dans le Jcombobox


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

liste de mots dans le Jcombobox

samedi 7 mars 2009 à 18:28:21 | liste de mots dans le Jcombobox

moooonaaaa

Bonjour,

je suis débutante en java. Je suis entrain de faire une application en java en utilisant eclipse.
J'ai un Jcombobox qui contient des noms de personne.
Je veux que lorsque je tape une lettre de ce mot la liste dans le combobox diminue c'est à dire ne me reste que les noms de personnes qui débutent par la 1 ere lettre puis lorsque j'ajoute une deuxiéme lettre la liste dans le combo diminue encore.
Je vous remercie pour votre aide

dimanche 8 mars 2009 à 01:28:37 | Re : liste de mots dans le Jcombobox

danimo

Bonjour,

Voici un petit exemple:

import java.awt.*;
import
java.awt.event.*;
import
javax.swing.*;
import
java.awt.Dimension;

public class ComboBox2 extends
JPanel
implements
ActionListener
{
JLabel label;
JComboBox listeNoms;

String libelle;

static
Dimension screen;
static int
w;
static int
h;

public
ComboBox2()
{
super ( new
BorderLayout());

// tableau de tous les noms (qui sont "bidons" sauf moooonaaaa:
String[] tableauNoms = { "Aaaaa" , "Aabbb" , "Abbbb" , "Abccc" , "Accccc" , "Acdddd"
,
"Baaaa" , "Babbb" , "Babcc" , "Babcd" , "Bbbbb" , "Bbccc" , "Bccccc" , "Bcdddd"
,
"moooonaaaa" , "mopqrstuvw" , "moprstuvwx" , "mppppobbbb" , "mpqqqrssss"
};
int
nombre = 0;
//Supposons qu'ici on entre la lettre m ou les lettres mo ...
String laLettre = "m" ;
// c'est donc une simulation
int
j = 0;

// comptage des noms qui commencent par laLettre (ou les lettres)
for ( int
i = 0; i < tableauNoms.length; i++)
{
if
(tableauNoms[i].startsWith(laLettre))
nombre++;
}

// c'est le tableau suivant qui servira a créer la combo 
String[] tableauReduit =
new String[nombre];
// sa taille (nombre de noms) sera exactement egale au nombre de noms
// qui commence par ("m") dans cet exemple.

// on crée donc le tableau réduit
for ( int
i = 0; i < tableauNoms.length; i++)
{
if
(tableauNoms[i].startsWith(laLettre))
{
tableauReduit[j] = tableauNoms[i];
j++;
}
}

// création de la combo box
listeNoms = new
JComboBox(tableauReduit);
listeNoms.setSelectedIndex(0);
// selection par defaut du nom n° 1
listeNoms.addActionListener( this
);

// set up label
label = new
JLabel();
label.setFont(label.getFont().deriveFont(Font.ITALIC));
label.setHorizontalAlignment(JLabel.CENTER);
updateLabel(tableauReduit[listeNoms.getSelectedIndex()]);
label.setBorder(BorderFactory.createEmptyBorder(40, 0, 0, 0));
// 40, 0, 0. 0

// taille
label.setPreferredSize( new
Dimension(400, 400));

// lay out
add(listeNoms, BorderLayout.PAGE_START);
add(label, BorderLayout.PAGE_END);
setBorder(BorderFactory.createEmptyBorder(20, 20, 20, 20));
}

// Listen.
public void
actionPerformed(ActionEvent ae)
{
JComboBox jcb = (JComboBox)ae.getSource();
String nomCas = (String)jcb.getSelectedItem();
System.out.println(
"L 85 nomSel : " + nomCas + " (Choisi)."
);
label.setText(libelle);
}

protected void
updateLabel(String nom)
{
System.out.println(
"L 91 nomDef : " + nom + " (Selectionne par defaut au lancement)."
);
libelle =
"CHOISIR UN AUTRE NOM, OU BIEN, FERMER LA FEN\u00caTRE (X)"
;
label.setText(libelle);
}

public static void
main(String s[])
{
String test =
"hello \"world\" ... "
;
System.out.println(test);

//Recupereration des dimensions de l'ecran utilise:
screen = Toolkit.getDefaultToolkit().getScreenSize();
w = screen.getSize().width;
h = screen.getSize().height;
System.out.println(
"WIDTH/HEIGHT: " + w + "/"
+ h);


JFrame.setDefaultLookAndFeelDecorated(
true
);

JFrame fr =
new JFrame( "ComboBox2:"
);
fr.setBounds(w-450, 0, 450, h-30);
fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JComponent newContentPane =
new
ComboBox2();
newContentPane.setOpaque(
true
);
fr.setContentPane(newContentPane);

fr.pack();
fr.setVisible(
true
);
}
}

Bon ce n'est pas complet puisqu'on ne boucle pas pour entrer une ou plusieurs autres lettres mais tu as quelque chose pour continuer.

Cordialement,

...\ Dan /...

dimanche 8 mars 2009 à 02:01:24 | Re : liste de mots dans le Jcombobox

danimo

Re,

Une petite variante:
Supposons qu'on veuille tout prendre, en entrant le caractère *, on aura tout;


int nombre = 0;
//Supposons qu'ici on entre la lettre m ou les lettres mo ... ou *
String laLettre = "*" ; // c'est donc une simulation
int j = 0;

// comptage des noms qui commencent par laLettre (ou les lettres)
// si la lettre est ("*") on prend tout
for ( int i = 0; i < tableauNoms.length; i++)
{
if (!laLettre.equals( "*" )) //c'est ce tableau qui sert a créer la combo
{
if (tableauNoms[i].startsWith(laLettre))
nombre++;
}
else
{
nombre++;
}
}

String[] tableauReduit =
new String[nombre]; //c'est ce tableau qui sert a créer la combo

// on crée le tableau réduit (qui sera complet si la lettre est("*"))
for ( int i = 0; i < tableauNoms.length; i++)
{
if (!laLettre.equals( "*" )) //c'est ce tableau qui sert a créer la combo
{
if (tableauNoms[i].startsWith(laLettre))
{
tableauReduit[j] = tableauNoms[i];
j++;
}
}
else
{
// si laLettre est ("*") on prend tout.
tableauReduit[j] = tableauNoms[i];
j++;
}
}

Cordialement,

...\ Dan /...

dimanche 8 mars 2009 à 12:50:08 | Re : liste de mots dans le Jcombobox

moooonaaaa

Bonjour,,
Je vous remercie beaucoup pour votre aide.


Cette discussion est classée dans : java, liste, mots, lettre, jcombobox


Répondre à ce message

Sujets en rapport avec ce message

Les listes dynamiques [ par drizzt40 ] Comment fait on pour utiliser les listes de Java.J'ai vu en cours comment créer nos propres classes liste (liste chainé, liste symétrique, liste circu JComboBox en Java [ par etudiant ] Je voudrais savoir comment provoquer une action même si l'élément sélectionné dans le ComboBox est le même qui a été sélectionné précédemment? Pour l' JAVA: Jcombobox & chargement ? 2 questions [ par ronando ] bjr a tous,2 questions dc.Je voudrai savoir comment fair pr que lorsque l'on selectionne un element ds une Jcombobox qu'il se passe un evenement (ex : JComboBox [ par zizou39 ] Bonjour a tous !J'ai un resultset ou se trouve l'id de personnes ainsi que leur nom.J'arrive a afficher le nom des personnes dans ma liste deroulante Inserion d'une liste de mots ordonnée dans un arbre de préfixes [ par dorix ] Voila, je voudrais savoir comment créer une methode inserer() qui permettra d'inserer un mot dans un arbre de prefixe. C'est urgent Merci.DoRiX</STRON JComboBox, ComboBoxEditor... [ par terminagroo ] Bonjour,Voilà j'ai un comboBox avec une liste d'items. Pour chaque item je veux une image et un nom.Donc pour pouvoir afficher et le nom j'ai créé un créer une PageAction avec Struts [ par zenouba2005 ] bonjour,je travaille avec struts et eclipse,pour créer une PageAction je fais New/Easy Action n'est ce pas??en fait je veux selectionner une liste de Les différentes structures pour représenter une liste en java [ par yray ] Bonjour à tous,Il existe une multitude de strucutres pour représenter des listes en Java :- Tableau : String[] par exemple- ArrayList- Vector- List- H JComboBox, Vector et Rafraichissement ... [ par Jolann69100 ] Bonjour à tous, j'ai un petit soucis avec mes JComboBox :J'ai créés 2 JComboBox que j'initialise avec des vecteurs , eux-même remplis à partir d'une b erreur code java [ par Erwan76 ] bonjour a tous,je suis débutant en java et je rencontre un probleme lors de son éxécution.j'essaie de récupérer un champs d'une base de donnée MySql e


Nos sponsors


Sondage...

Comparez les prix


HTC Magic

Entre 429€ et 429€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,608 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales