Dalam bidang antara muka pengguna, selalunya wajar untuk menyediakan ciri yang membolehkan pengguna memasukkan data dengan mudah dengan mencadangkan potensi pelengkapan berdasarkan aksara yang mereka taip. Di Java, kefungsian ini boleh dicapai dengan menggunakan komponen JTextfield untuk input pengguna dan komponen JList untuk memaparkan cadangan.
Pelaksanaan kefungsian autolengkap ini melibatkan dua langkah utama:
Untuk menggambarkan konsep ini dengan lebih lanjut, kami menyelidiki contoh kod ringkas:
import java.util.ArrayList; import javax.swing.*; public class AutoComplete { private JFrame frame; private ArrayList<String> suggestions; private JTextfield textField; private JList<String> suggestionList; public AutoComplete() { // Populate suggestions suggestions = new ArrayList<>(); suggestions.add("Apple"); suggestions.add("Banana"); suggestions.add("Orange"); // Initialize components textField = new JTextfield(); suggestionList = new JList<>(); // Implement autocomplete logic textField.addKeyListener(new KeyListener() { @Override public void keyTyped(KeyEvent e) { // Filter suggestions based on user input String input = textField.getText(); DefaultListModel<String> listModel = new DefaultListModel<>(); for (String suggestion : suggestions) { if (suggestion.startsWith(input)) { listModel.addElement(suggestion); } } // Update the suggestion list suggestionList.setModel(listModel); } @Override public void keyPressed(KeyEvent e) {} @Override public void keyReleased(KeyEvent e) {} }); // Display the components frame = new JFrame(); frame.setLayout(new GridLayout(2, 1)); frame.add(textField); frame.add(suggestionList); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.pack(); frame.setVisible(true); } public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { @Override public void run() { new AutoComplete(); } }); } }
Dalam contoh ini, input pengguna ditapis terhadap senarai cadangan yang telah diisi terlebih dahulu. Semasa pengguna menaip, senarai cadangan dikemas kini secara dinamik untuk memaparkan pilihan padanan sahaja. Dengan menggunakan pendekatan ini, pembangun boleh menyediakan pengguna proses kemasukan data yang lebih pantas dan cekap.
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Fungsi Autolengkap dalam Java menggunakan JTextField dan JList?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!