Bonjour,
J'ai téléchargé la dernière version d'eclipse et dans celle-ci il m'est souligné que la methode show() pour un objet window est deprecated. quequn sait-il par quoi il faudrais la remplacer ?
Merci d'avance
Bonjour,
J'ai téléchargé la dernière version d'eclipse et dans celle-ci il m'est souligné que la methode show() pour un objet window est deprecated. quequn sait-il par quoi il faudrais la remplacer ?
Merci d'avance
Sais tu que sun propose une API?
isVisible(true)
A la place d'ouvrir un explorateur pour charger www.developpez.net, charge http://java.sun.com/j2se/1.5.0/docs/api/
Envoyé par Edit
désolé je le ferais plus promis
je sors []
Pour ceux que cela interesse c'estqu'il faut utiliser.
Code : Sélectionner tout - Visualiser dans une fenêtre à part Component.setVisible(boolean)
salut,
je suis content que qq ait poser ce probleme
moi aussi j'ai decouvert il y a quelque temps que show est devenu deprecated et il est remplacé par setVisible que j'utlise desormais dans mes classe
curieux de nature, je suis allé jeter un coup d'oeil sur la methode setVisible dans les sources des classes (pour voir les modifs) et deviner quoi, elle appelle la méthode show
ensuite les gens de sun disent que show est deprectaed
je comprend pas
Salut,
En réalité il s'agit d'un problème de nom... show() prete à confusion car son nom indique que l'on affiche le composant. Or ce n'est vrai que pour les fenêtres (Window, Frame, Dialog pour AWT et JWindow, JFrame, JDialog pour Swing). En effet pour tous les autres composants, il faut que le composant parent soit affiché pour pouvoir être affiché (on ne peut pas affiché un JLabel si sa JFrame n'est pas affiché)...Envoyé par komando
Le nom setVisible() est plus correct car il indique que l'on change l'attribut visible de l'élément, mais cela n'implique pas forcément qu'il sera affiché/caché... Cela dépend du type de composant et de ses composants parent...
En gros on peut dire que show() aurait pu être renommé en setVisible()...
Mais ce n'est pas possible de renommer une méthode de l'API car cela implique que l'on perd la compatibilité avec les anciennes applications...
Ainsi, show() a été déprécié et setVisible() a été créé. Mais comme le code source de show() est tout à fait correct et que setVisible() propose les mêmes fonctionnalité, setVisible() se contente d'appeller show() afin d'éviter de dupliquer le code (perso. j'aurais fait l'inverse mais bon...) !!!
Ainsi, il faut utiliser setVisible() à la place de show() même si les deux méthodes font la même chose...
show() a ensuite été déprécié pour les Window (ce n'étais pas le cas lorsque il a été déprécié pour les autres composants) même si son nom est 'correct' afin de conserver une uniformisation entre les composants...
Et peut-être que dans une version future de Java show() et d'autres méthodes dépréciées seront supprimé... (ce n'a jamais été fait pour le moment).
a++
PS : De plus, pour les composants Swing, setVisible() est surcharger et n'appelle pas forcément show()....
Bravo. Ca le mérite d'être clair et convaincant ton explication.
Chapeau!
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager