cs_raff
Messages postés182Date d'inscriptiondimanche 18 août 2002StatutMembreDernière intervention 5 janvier 2004
-
24 avril 2003 à 18:50
philllou
Messages postés1Date d'inscriptionjeudi 23 décembre 2004StatutMembreDernière intervention14 janvier 2005
-
14 janv. 2005 à 23:32
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
philllou
Messages postés1Date d'inscriptionjeudi 23 décembre 2004StatutMembreDernière intervention14 janvier 2005 14 janv. 2005 à 23:32
Merci pour ton code et bonne continuation
rschwartz
Messages postés2Date d'inscriptionvendredi 26 septembre 2003StatutMembreDernière intervention10 septembre 2007 26 sept. 2003 à 15:43
cavoktchi
cs_raff
Messages postés182Date d'inscriptiondimanche 18 août 2002StatutMembreDernière intervention 5 janvier 20043 23 mai 2003 à 18:21
je n'ai jamais dit que ce n'était pas possible....ce que je dis, c'est que c'est pas élégant, dans ce genre de situation, et que finalement, tu sauves trois ou quatre lignes de codes pour finalement te retrouver avec des objets accessibles avec deux lignes de get this get that.....et puis le "ça marche" est très très loin d'être une bonne raison dans la plupart des cas.
cs_Skyzoboy
Messages postés8Date d'inscriptionmardi 8 avril 2003StatutMembreDernière intervention 4 mai 2006 23 mai 2003 à 10:46
cs_Skyzoboy
Messages postés8Date d'inscriptionmardi 8 avril 2003StatutMembreDernière intervention 4 mai 2006 23 mai 2003 à 10:44
Si l'on fait :
<nomduJMenu>.getItem().setEnabled(false) --> ça marche nikel !
Pire ! Pour les sous-menus :
(<nomduJMenu>.getMenuComponent()).getItem().setEnabled(false) --> ça marche aussi !
Donc je ne vois pas où est le problème ??? (tjs pas besoin de déclarer les variables, par contre les JMenu doivent l'être pour les listeners ....)
@+
cs_Skyzoboy
Messages postés8Date d'inscriptionmardi 8 avril 2003StatutMembreDernière intervention 4 mai 2006 23 mai 2003 à 10:43
Si l'on fait :
<nomduJMenu>.getItem().setEnabled(false) --> ça marche nikel !
Pire ! Pour les sous-menus :
(<nomduJMenu>.getMenuComponent()).getItem().setEnabled(false) --> ça marche aussi !
Donc je ne vois pas où est le problème ??? (tjs pas besoin de déclarer les variables, par contre les JMenu doivent l'être pour les listeners ....)
@+
cs_raff
Messages postés182Date d'inscriptiondimanche 18 août 2002StatutMembreDernière intervention 5 janvier 20043 26 avril 2003 à 01:09
Je ne sais pas si on peut vraiment appeler ça un algorithme...mais enfin, je crois vraiment que cette idée de ne pas déclarer les variables pour ce genre d'objet (ou finalement de ne pas garder de référence à ceux-ci) soit une erreur. Au pire, tu peux toujours utiliser un tableau (JMenuItem[] mes_items) si tu as beaucoup d'items et que tu veux pas te perdre. Mais enfin je ne vois pas ce qu'il y a de si compliqué avec les menus, c'est pas mal moins encombrant que tout ce qu'il faut faire pour bien (je dis "bien") agencer un interface (avec les différents layouts)...
cs_BlackWood
Messages postés37Date d'inscriptionmardi 15 avril 2003StatutMembreDernière intervention 4 octobre 20062 25 avril 2003 à 08:54
>> Raff : C'est vrai, un des probleme pour cet algo est le setEnabled(false) par exemple mais je l'avais remarqué et en fait j'ai utilisé une variable pour les menus que j'ai besoins de manipulé de cet façon (qui sont finalement assez rares). Les autres sont restés ce "menuItem".
Alors finalement, y a-t-il un algo parfait pour les menus ? Sans déclarer une vingtaine de variables inutiles ou sans perdre ses avantages en n'en déclarant qu'une seule ?
cs_raff
Messages postés182Date d'inscriptiondimanche 18 août 2002StatutMembreDernière intervention 5 janvier 20043 24 avril 2003 à 18:50
bon je suis d'accord, tu n'as pas eu besoin de déclarer une variable pour chaque JMenuItem.....mais finalement, il faut tout de même que tu ajoutes chacun un à la fois, en précisant le texte et les propriétés, etc. Je ne trouves pas qu'il s'agit d'un avantage, mais plutôt d'un désavantage, car les objets sont gardés en mémoire même si aucune variable ne réfère directement à ceux-ci (un menu n'est qu'un pointeur, ce qui est gardé en mémoire, ce sont les attributs, texte, mnémonic, etc.). Et puis cela devient plus complexe de modifier les attributs, par exemple si tu veux faire un setEnable(false) sur un JMenuItem en particulier. Tu est alors obligé de faire un test sur chacun des menus pour trouver l'item en question....Mieux vaut avoir une référence à chaque objet, c'est plus clair et plus pratique.
14 janv. 2005 à 23:32
26 sept. 2003 à 15:43
23 mai 2003 à 18:21
23 mai 2003 à 10:46
rectification :
((JMenu)<nomduJMenu>.getMenuComponent()).getItem().setEnabled(false)
@+
23 mai 2003 à 10:44
<nomduJMenu>.getItem().setEnabled(false) --> ça marche nikel !
Pire ! Pour les sous-menus :
(<nomduJMenu>.getMenuComponent()).getItem().setEnabled(false) --> ça marche aussi !
Donc je ne vois pas où est le problème ??? (tjs pas besoin de déclarer les variables, par contre les JMenu doivent l'être pour les listeners ....)
@+
23 mai 2003 à 10:43
<nomduJMenu>.getItem().setEnabled(false) --> ça marche nikel !
Pire ! Pour les sous-menus :
(<nomduJMenu>.getMenuComponent()).getItem().setEnabled(false) --> ça marche aussi !
Donc je ne vois pas où est le problème ??? (tjs pas besoin de déclarer les variables, par contre les JMenu doivent l'être pour les listeners ....)
@+
26 avril 2003 à 01:09
25 avril 2003 à 08:54
Alors finalement, y a-t-il un algo parfait pour les menus ? Sans déclarer une vingtaine de variables inutiles ou sans perdre ses avantages en n'en déclarant qu'une seule ?
24 avril 2003 à 18:50