Когда вызывается метод actionPerformed
, вы просто меняете значение переменной str
.Это не приводит к автоматическому обновлению текстового поля - только потому, что вы вызвали
tf.setText(str);
, не означает, что оно будет автоматически просматривать переменную str
все время.Если вы хотите снова установить текст, снова наберите tf.setText
.(В качестве альтернативы вы можете заняться всем бизнесом, связанным с моделями / представлениями / контроллерами, и именно так должен работать Swing, но это значительно сложнее. На данный момент вам, вероятно, лучше всего придерживаться простого подхода.)