bonjour tout le monde,
je voudrais faire une classe qui hérite du JTextField, et je voudrais redéfinir la méthode qui écrive (dessine ?) le texte, le problème c'est que je ne la connais pas. est-ce la méthode paint ou une autre ?
merci d'avance.
bonjour tout le monde,
je voudrais faire une classe qui hérite du JTextField, et je voudrais redéfinir la méthode qui écrive (dessine ?) le texte, le problème c'est que je ne la connais pas. est-ce la méthode paint ou une autre ?
merci d'avance.
salut,
Pour ta question, il aurait sympa de chercher en premier sur la JavaDoc !
Sinon pour les JTextField la méthode pour changer le texte est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part jtf.setText( string );
et ç'aurai été plus sympa de lire la question avant de repondre![]()
J'ai cherché un peu du côté du look'n feel (javax.swing.plaf), mais le problème c'est que c'est une construction à tiroir. Le dessin est découpé en tellement de morceaux (bordure, couleurs pour L&F...), les méthodes sont toutes déléguées à d'autres objets, ça donne le vertige![]()
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Que la force de la puissance soit avec le courage de ta sagesse.
C'est dans les méandres de swing.text, particulièrement dans les méandres de javax.swing.text.View. Et même là il y a encore des méandres de méandres.
arf désolé j'ai effectivement regardé la question trop rapidement
Sinon je pense aussi que ça doit être vraiment à un niveau très profond du Package text et donc d'autant plus difficile à redéfinir![]()
hmmm, c'est pas bon signe ça !! bref si c'est aussi dur je vais essayer de contourner le probleme d'en haut, mais la aussi j'aurai besoin d'un peut d'aide,
je veut qu'un text compononent (jtextfield par ex) n'accepte que des digits, comment peut on faire ça, j'ai vu que c'est possible avec des inputmap mais je voudrais une autre solution si possibe ?
merci d'avance
Bon en fait tu avais mal expliqué le problème, tout le monde s'était orienté sur les méthodes de dessin, ce qui n'a rien à voir.
Dans ton cas il faut soit utiliser un JFormattedTextfield ou encore mieux, utiliser un DocumentListener sur le document de ton jTextField (obtenu par la méthode getDocument())
thank you, je vais utiliser ça, juste une chose sur le site de sun, on dis qu'on ne devrait pas utiliser le documentlistener pour changer le document mais à la place ecrire son propre Document et redefinir le(s) methde(s) insertString et/ou remove.
merci a vous tousDocument listeners should not modify the contents of the document; The change is already complete by the time the listener is notified of the change. Instead, write a custom document that overrides the insertString or remove methods, or both. See Listening for Changes on a Document for details.
Partager