IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants Java Discussion :

[JComboBox] sauvegarder l'état d'un composant


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 18
    Par défaut [JComboBox] sauvegarder l'état d'un composant
    Bonjour,
    Dans mon application j’utilise un Jcombobox éditable, donc je voudrais tous simplement savoir je dois utiliser quoi pour sauvegarder les modification sur ce Jcombobox après l’exit de l’application sans utiliser des fichiers externe genre fichier xml ou txt
    Jais essayé avec la technologie javabeans pour sauvegarder l’état de mon Jcombobox mais jais pas réussi
    merci

  2. #2
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 690
    Par défaut
    Si tu veux enregistrer le résultat d'un JComboxbox sans utiliser de fichiers tu as le choix entre le chamanisme, le vaudou ou éventuellement la nécromancie. A par ca je vois pas.
    Si tu veux enregister quelquechose, il faut bien le mettre quelquepart.

    Ca serait bien que tu précise d'avantage ce que tu veux sauvegarder et ou le mettre.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 18
    Par défaut
    Et b mon ami jais le trouver son passer ni par le chamanisme, le vaudou, ou par la nécromancie, ont passent par Java (JDesktop).
    Voila tout simplement la solution.
    Crée un classe de la JComponent qui implémente l’interface Property dans mon cas c un jcombobox

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
     
    import java.awt.Component;
    import javax.swing.JComboBox;
    import org.jdesktop.application.SessionStorage.Property;
     
    /**
     *
     * @author AzazaSoft
     */
     public  class ComboboxProperty implements Property {
     
            private void checkComponent(Component component) {
                if (component == null) {
                    throw new IllegalArgumentException("null component");
                }
                if (!(component instanceof JComboBox)) {
                    throw new IllegalArgumentException("invalid component");
                }
            }
     
            public Object getSessionState(Component c) {
                checkComponent(c);
                JComboBox p = (JComboBox) c;
                return new ComboboxState(p.getSelectedIndex());
            }
     
            public void setSessionState(Component c, Object state) {
                checkComponent(c);
                if ((state != null) && !(state instanceof ComboboxState)) {
                    throw new IllegalArgumentException("invalid state");
                }
                JComboBox p = (JComboBox) c;
                ComboboxState tps = (ComboboxState) state;
               p.setSelectedIndex(tps.getSelectedIndex());
            }
        }
    //  La classe ComboboxState
     
     
    public class ComboboxState {
     
        private int selectedIndex;
     
        public ComboboxState(int selectedIndex) {
            selectedIndex = -1;
            this.selectedIndex = selectedIndex;
        }
     
        public int getSelectedIndex() {
            return selectedIndex;
        }
     
        public void setSelectedIndex(int selectedIndex) {
            if (selectedIndex < -1) {
                throw new IllegalArgumentException("invalid selectedIndex");
            }
            this.selectedIndex = selectedIndex;
        }
        }
    Et dans la classe ou on doie lancer lapplication on implement les 2 methodes startup() et shutdown()
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    @Override
        protected void shutdown() {
     
            try {
                getContext().getSessionStorage().save(tesst1View.JComboBox1, sessionFile);
                getContext().getSessionStorage().save(tesst1View .getFrame(), sessionFile);
            } catch (IOException e) {
            }
        }
    @Override
        protected void startup() {
     
            tesst1View = new Tesst1View(this);
            try {
     
                getContext().getSessionStorage().restore(tesst1View.getFrame(), sessionFile);
                getContext().getSessionStorage().putProperty(javax.swing.JComboBox.class, new ComboBoxProperty());
     
            } catch (IOException e) {
     
            }
     
            show(tesst1View);
        }
    Et c fait

    voila un lien qui peut etre utile pour toi

    http://127.0.0.1:8082/resource/jar%3...op/application

  4. #4
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Par défaut
    getContext().getSessionStorage().restore(tesst1View.getFrame(), sessionFile);
    sessionFile c'est pas un fichier ?
    Ce lien est en locale sur ton ordinateur il me semble...

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 18
    Par défaut
    wi c ca
    private static final String sessionFile = "session.xml";

  6. #6
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Par défaut
    je voudrais tous simplement savoir je dois utiliser quoi pour sauvegarder les modification sur ce Jcombobox après l’exit de l’application sans utiliser des fichiers externe genre fichier xml ou txt

Discussions similaires

  1. [richfaces] sauvegarder l'état d'un composant
    Par pbayou dans le forum JSF
    Réponses: 1
    Dernier message: 11/04/2008, 14h09
  2. enregistrer l'état d'un composant
    Par wbagg2 dans le forum Composants VCL
    Réponses: 4
    Dernier message: 07/05/2006, 15h54
  3. [Strategie] Sauvegarde d'état
    Par nicolou dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 20/03/2006, 17h08
  4. Réponses: 1
    Dernier message: 05/10/2005, 12h33
  5. [IDE][VS.NET] Comment sauvegarder l'état des 'Region' ?
    Par CkurcK dans le forum Contribuez
    Réponses: 2
    Dernier message: 23/02/2004, 14h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo