Utiliser SwingPropertyChangeSupport pour mettre à jour dynamiquement JTextArea
Dans ce code, SwingPropertyChangeSupport est utilisé pour déclencher des mises à jour dans un JTextArea chaque fois que le modèle de données sous-jacent, représenté par la classe ArrayForUpdating, change. Cela permet une mise à jour dynamique de l'interface graphique en réponse aux modifications apportées au modèle de données.
La classe ArrayForUpdating est responsable de la maintenance d'un tableau d'entiers. Il expose une instance SwingPropertyChangeSupport, permettant aux auditeurs de s'inscrire aux événements de changement de propriété. Chaque fois que le tableau est modifié, la classe ArrayForUpdating déclenche un événement de changement de propriété, avertissant les écouteurs enregistrés.
Dans la classe GuiForUpdate, une instance de ArrayForUpdating est créée et enregistrée en tant qu'écouteur de changement de propriété. Lorsque le tableau est modifié, l'écouteur est invoqué et la valeur modifiée est récupérée. Cette valeur est ensuite affichée dans le JTextArea (displayOutput) au sein de l'interface graphique.
La méthode processInput dans GuiForUpdate est responsable de la modification du tableau. Il collecte la valeur et l'index saisis auprès de l'utilisateur et met à jour le tableau en conséquence.
L'implémentation d'ActionListener pour changeArrayButton gère l'événement de clic sur le bouton. Il ouvre une boîte de dialogue pour autoriser la saisie de l'utilisateur, traite l'entrée et déclenche la modification du tableau. La zone de texte displayOutput est ensuite mise à jour avec les valeurs du tableau modifiées.
En résumé, SwingPropertyChangeSupport fournit un mécanisme pour propager les modifications des modèles de données aux composants de l'interface graphique qui en dépendent, garantissant que l'interface graphique reste synchronisée avec le données sous-jacentes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!