Component swing jtextfield setEnabled vs setEditable

Quelle est la différence entre JTextField.setEnabled() et JTextField.setEditable()?
Dans mon code j'ai une Instance d'une classe héritée de JTextField. Mais quand j'ai mis ses biens setEnabled(false) je peux encore modifier et traiter son contenu dans mon programme. Cependant, quand je définissez sa propriété setEditable(false) je ne peux plus modifier son texte. Si c'est le cas. Alors quel est le but de setEnabled() bien ici?

Mon Code pour la classe héritée est:

 private static class CCField extends JTextField{
      private static final long serialVersionUID = 1L;
      public CCField() {
        this( DEFAULT_COLUMN_COUNT );
      }

      public CCField(final int cols) {
        super( cols );
 }

Ajout d'INFOS
Lorsque j'appelle le setEnabled() propriété de cette classe, il n'a pas à démontrer un quelconque effet sur le champ de texte et il en reste encore activé. J'ai un conteneur Jcomponent dans mon code qui ont cette CCField comme un composant enfant. Donc, lorsque j'essaie de le désactiver à l'aide de setEnabled(false) il encore modifiable. Alors que quand j'essaie de le désactiver à l'aide setEditable(false) alors qu'il est désactivé.
C'est comment j'accède à ce textField dans mon conteneur:

 JComponent jComp = DDEUtil.getComponent(icTableLayout,icDS);
 ((JTextField)jComp.getComponent(1)).setEditable(false);

Et ce qui se passe dans DDEUtil.getComponent est trop complexe, car elle comporte un certain nombre de classes et pas possible de poster ici.

Je me demande, je n'ai pas remplacé toute méthode de ce composant alors pourquoi est-il en montrant ce comportement.

Post un programme complet montrant le problème. setEnabled(false) désactive un champ de texte complètement. setEditable(false) encore, permet de sélectionner et de copier son contenu, mais n'autorise pas la modification de sa valeur.
Je pense que peut être une réponse...
Je pense que la vraie question est: pourquoi setEnabled(false) n'est pas hors de mon champ de texte. Mais la coopérative doit mettre plus de code pour avoir une réponse à cette question.
Lorsque j'appelle la setEnabled() de la propriété de cette classe, il n'a pas à démontrer un quelconque effet sur le champ de texte et il en reste encore activé. quelque Chose qui cloche dans le code que vous ne montrant pas 😉 Alors, soit poster un SSCCE ou de les résoudre sans l'aide, personne ne peut deviner qui ligne invisible qui est faux ...
J'ai montrer que chaque chose, sauf DDEUtil.getComponent qui est trop grand, complexe et générique, comme il est de générer beaucoup de composants à l'aide de la réflexion.

OriginalL'auteur Tariq | 2014-02-11