Couleur d'arrière-plan de component swing jtextfield ne pas devenir 'grisé' lorsqu'il est désactivé après la couleur d'arrière-plan a été changé avant

Normalement lorsque vous utilisez setEditable(false) ou setEnabled(false), l'arrière-plan/premier plan de la couleur de la component swing jtextfield devient 'grisé'. Toutefois, si une couleur d'arrière-plan avait déjà été réglée à l'aide de setBackground(color) (par exemple pour white), puis l'appel à setEnabled ou setEditable n'affectera pas la couleur d'arrière-plan plus. Au lieu de cela, elle est remplacée par la déjà mis en couleur.

En WinForms (.NET) ce problème est résolu par les "réinitialiser" la couleur d'arrière-plan à un non-valeur par défaut de substitution, à savoir Color.Empty. Que serait la cause d'une zone de texte pour retrouver le comportement standard. Cependant, je n'ai pas trouvé de similaire "valeur par défaut" pour le component swing jtextfield. Comment puis-je revenir sur le component swing jtextfield pour utiliser les couleurs par défaut et passer automatiquement de la couleur quand il est désactivé ou réglé sur lecture seule? La couleur de premier plan a un problème similaire.

OriginalL'auteur dialer | 2013-03-28