Bonjour,
Y a t'il un moyen de forcer la perte d'un focus d'un composent, sans pour autant que le composant ait le focus ?
Merci d'avance.
Version imprimable
Bonjour,
Y a t'il un moyen de forcer la perte d'un focus d'un composent, sans pour autant que le composant ait le focus ?
Merci d'avance.
Si un composant n'a pas le focus, il ne risque pas de le perdre...
Moi pas comprendre. L'explication et le contexte n'étant pas donner, et ayant oublié ma boule de cristal aujourd'hui...
J'explique:
J'ai une application basé sur MVC Swing.
La communication entre le model et la vue se fait via databinding. Du coup si le model change, une notification est envoyé a la vue et cela implique le changement des composant graphique. et vice versa.
Dans ma vue j'ai un un Panneau (JtextField + Jbouton + JLabel)
Dans ce panneau j'ai ajouté un FocusListener qui marche bien.
Lorsque je rentre un code dans le textfield et je pars vers un autre composant,
la methode focusLost est declanché , et un traitement se fait qui remplie ensuite le Label.
Probleme: j'ai implémenté un autre traitement dans la vue principale au click sur F5: Pour ne pas rentrer dans le detail JtextField.setText est appelé .
Du coup le JtextField est rempli mais il n'y a pas eu de perte focus et parsuite le label ne se remplie pas.
Je me demande si je peux forcer l'appel a FocusLost lorsque je clike sur le F5.
J'espere être assez clair
il doit y avoir une méthode appelé dans ton lost focus.
il faut la rappeler suite à ton F5
Le problème c'est que je n'ai pas une vue sur la classe qui contient le FocusLost (des sousController)
De plus le mécanisme qui fait la liaison entre la view et le model est obselete
tu fais monComposant.requestFocus() et ensuite tu poses le focus sur un autre composant. Non ?