Je suis donc en train de jouer avec Jython, en essayant de créer une interface graphique générique. Rien de plus que ce qu'ils ont sur le Wiki Jython pour les exemples de swing. Je déclare donc un JFrame, puis j'essaie d'ajouter un panneau, des champs de texte, tout ce qu'il y a de mieux. Je reçois cette erreur quand je l'exécute, cependant. "L'objet 'NoneType' n'a pas d'attribut 'add'"Jython - tentative d'appel de fonctions à partir de JFrame, erreur 'NoneType'
Voici le code de base que j'ai.
from javax.swing import *
frame = JFrame('E-mail Gathering', defaultCloseOperation = JFrame.EXIT_ON_CLOSE, size =(600,400), locationRelativeTo = None).setVisible(True)
pnl = JPanel()
frame.add(pnl)
self.textfield1 = JTextField('username:',15)
pnl.add(self.textfield1)
self.textfield2 = JTextField('password:', 15)
pnl.add(self.textfield2)
mailButton = JButton('Login',actionPerformed=self.checkmail)
pnl.add(mailButton)
frame.pack()
frame.setVisible(True)
Je sais que la partie pertinente où il s'effondre est à « frame.add (pnl) » avec l'erreur mentionnée ci-dessus. Je pensais que je mettrais le reste là au cas où je commettrais des erreurs encore plus grandes. J'ai l'impression que quelque chose ne va pas lorsque je ne déclare pas correctement le cadre en JFrame, mais je sais que ce n'est pas le cas car cela crée très bien le cadre si je n'essaie pas d'y ajouter quoi que ce soit.
Merci pour vos conseils ou suggestions.
Vous le savez probablement déjà, mais vous ne devriez pas utiliser 'from foo import *' sauf pour les raccourcis dans les scripts de jouets ou l'interprète. Et même alors, c'est sans doute une mauvaise idée. – katrielalex
Je suis en fait un novice total, je n'avais aucune idée. Comment êtes-vous censé le mettre, et pourquoi est-ce que je le fais mal? – Nick
N'importez que ce dont vous avez besoin pour éviter les collisions/ambiguïtés de noms, par exemple entre 'java.util.List' et' java.awt.List'. –