Rumah >Java >javaTutorial >Bagaimanakah Saya Boleh Menunjukkan Kotak Mesej Sejurus Selepas Perubahan Nilai JTextField?
Pendengar Perubahan Nilai untuk JTextField
Matlamatnya ialah untuk memaparkan kotak mesej serta-merta selepas pengubahsuaian nilai teks dalam JTextField. Semasa kod yang diberikan bertindak balas kepada kekunci enter, tingkah laku yang diingini adalah untuk mencetuskan kotak mesej dengan perubahan nilai.
Kod Tidak Sah
textField.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { // Code } });
Penyelesaian
Masalah berpunca daripada menggunakan ActionListener, yang menunggu untuk menekan kekunci enter. Untuk menangani perkara ini, seseorang perlu mendengar Dokumen asas sebaliknya:
textField.getDocument().addDocumentListener(new DocumentListener() { // Event handlers for document changes public void warn() { // Trigger message box if value less than or equal to 0 } });
Dengan menambahkan DocumentListener yang mendengar perubahan (sisipan, pengalihan keluar, pengubahsuaian) dalam Dokumen, gelagat yang diingini dicapai. Kaedah warn() menyemak sama ada nilainya kurang daripada atau sama dengan 0 dan mencetuskan kotak mesej dengan sewajarnya.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menunjukkan Kotak Mesej Sejurus Selepas Perubahan Nilai JTextField?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!