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

JavaFX Discussion :

Bind unbindBidirectional


Sujet :

JavaFX

  1. #1
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Cantal (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 76
    Points : 49
    Points
    49
    Par défaut Bind unbindBidirectional
    Bonjour je suis bloque sur un problème plutôt bête je pense mais je ne trouve pas la solution ...
    J'essaye de faire un bind d'un élément que j'ai sélectionnée dans une listView.
    Quand je sélectionne un élément de ma ListView, j'aimerai qu’un label récupère le nom de l’objet et l'affiche. J'arrive à faire cela sauf que l'affichage de mon objet et l’affichage java (javafx.scene.control.ListView$ListViewBitSetSelectionModel@432b0232) et je voudrait le nom je je lui est donnée.
    Pouvez vous m'aidez s'il vous plaît ?
    Voici mon code :

    Le code FXML (je pense que l'erreur est ici )
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
                <ListView fx:id="listDeCarte" orientation="HORIZONTAL" />
                <TextField fx:id="detailCarte" text="${listDeCarte.selectionModel}" BorderPane.alignment="CENTER" />

    et le code de la fenêtre associé :

    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
     
        @FXML
        private ListView<Carte> listDeCarte;
        @FXML
        private TextField detailCarte;
     
     
        public void initialize() throws IOException {
     
            listDeCarte.itemsProperty().bindBidirectional(manche.carteListJoueurProperty());
            listDeCarte.setCellFactory(param -> new CarteCellFactory());
     
            listDeCarte.getSelectionModel().selectedItemProperty().addListener((___, o, n) ->{
                if (n != null) {
     
                    detailCarte.textProperty().unbindBidirectional(n.nomCarteProperty());
                }
                if (o != null) {
                    detailCarte.textProperty().unbindBidirectional(o.nomCarteProperty());
                }
            });
        }

    Merci d'avance pour toute réponse et aide que vous m'apporterais.

  2. #2
    Membre averti
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juillet 2013
    Messages
    269
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2013
    Messages : 269
    Points : 434
    Points
    434
    Par défaut
    Bonjour,

    tu devrais poser ta question dans la partie "JavaFX", tu auras plus de chance d'avoir des réponses

    Autrement, déjà tu n'as pas mis l'annotation @FXML sur ton objet listDeCarte (à moins que ta copie du code l'ait tronqué).

  3. #3
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Cantal (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 76
    Points : 49
    Points
    49
    Par défaut
    Citation Envoyé par VirgApps Voir le message
    Bonjour,

    tu devrais poser ta question dans la partie "JavaFX", tu auras plus de chance d'avoir des réponses

    Autrement, déjà tu n'as pas mis l'annotation @FXML sur ton objet listDeCarte (à moins que ta copie du code l'ait tronqué).
    L'erreur sur le post est corriger merci

  4. #4
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 840
    Points : 22 854
    Points
    22 854
    Billets dans le blog
    51
    Par défaut
    Juste pour être sur : pourquoi penses-tu qu'un binding bidirectionnel est nécessaire ici ? tu veux pouvoir modifier le nom de l'objet directement en éditant le champs texte ?
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  5. #5
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Cantal (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 76
    Points : 49
    Points
    49
    Par défaut
    Citation Envoyé par bouye Voir le message
    Juste pour être sur : pourquoi penses-tu qu'un binding bidirectionnel est nécessaire ici ? tu veux pouvoir modifier le nom de l'objet directement en éditant le champs texte ?
    Bonjour et désoler pour le délais important de la réponse. Non je ne souhaite pas que l'on puisse modifier le nom de l'objet directement en éditant le champs texte, cependant si je n'utilise pas de bindBidirectionnel la propriété n'est pas afficher ....

  6. #6
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 840
    Points : 22 854
    Points
    22 854
    Billets dans le blog
    51
    Par défaut
    Un binding normal ne fonctionne pas ?
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  7. #7
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Cantal (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 76
    Points : 49
    Points
    49
    Par défaut
    Citation Envoyé par bouye Voir le message
    Un binding normal ne fonctionne pas ?
    Bonjour, non un bind ou un unbinding ne fonctionne pas (la property que je cherche a afficher n'est pas afficher mais il n'y a pas d'erreur qu'y ressort)

  8. #8
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 840
    Points : 22 854
    Points
    22 854
    Billets dans le blog
    51
    Par défaut
    Pourrais-tu STP tenter avec le code suivant à la place de ce que tu fais actuellement :

    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
    listDeCarte.itemsProperty().bindBidirectional(manche.carteListJoueurProperty());
    listDeCarte.setCellFactory(param -> new CarteCellFactory());
     
    final var nameBinding = new StringBinding() {
        {
            bind(listDeCarte.getSelectionModel().selectedItemProperty());
        }
     
        @Override
        public void dispose() {
            unbind(listDeCarte.getSelectionModel().selectedItemProperty());     
        }
     
        @Override
        protected String computeValue() {
            final var carte = listDeCarte.getSelectionModel().getSelectedItem();
            final var result = (carte == null) ? null : carte.getNomCarte();
            return result;
        }
    };
    detailCarte.textProperty().bind(nameBinding);
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  9. #9
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Cantal (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 76
    Points : 49
    Points
    49
    Par défaut
    Citation Envoyé par bouye Voir le message
    Pourrais-tu STP tenter avec le code suivant à la place de ce que tu fais actuellement :
    Bonjour, j'ai tenter votre code cela fonctionne mais je comprends pas très bien votre code ...

  10. #10
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 840
    Points : 22 854
    Points
    22 854
    Billets dans le blog
    51
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. traquer des requêtes non bindées
    Par aline dans le forum Oracle
    Réponses: 3
    Dernier message: 14/03/2005, 11h56
  2. Récupérer l'adresse de bind d'un socket
    Par gloode dans le forum Réseau
    Réponses: 4
    Dernier message: 04/02/2005, 10h56
  3. Bind ou pas Bind?
    Par jonzuzu dans le forum MFC
    Réponses: 4
    Dernier message: 19/03/2004, 10h00
  4. []Erreur sur second emploi collection binding
    Par jacma dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 08/03/2004, 18h02
  5. Bind - sous-domaine
    Par _Gabriel_ dans le forum Réseau
    Réponses: 4
    Dernier message: 07/03/2004, 11h54

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