Heim  >  Artikel  >  Java  >  Wie implementiert man die automatische Vervollständigung in Echtzeit mit JTextfield und JList in Java?

Wie implementiert man die automatische Vervollständigung in Echtzeit mit JTextfield und JList in Java?

Linda Hamilton
Linda HamiltonOriginal
2024-11-15 09:05:03813Durchsuche

Automatische Vervollständigung mit JTextfield und JList

Problemstellung:

Entwickeln Sie ein Java-Programm, das beim Eingeben von Zeichen Echtzeitvorschläge liefert in ein JTextfield, wobei eine JList als Vorschlag verwendet wird Liste.

Lösung:

1. Voraussetzungen:

  • Sortieren Sie Ihr Vorschlagsarray für optimale Leistung.
  • Verwenden Sie die Klassen Java2sAutoTextField und Java2sAutoComboBox.
  • Initialisieren Sie diese Komponenten mit geeigneten Werten.

2. Implementierung:

Erstellen Sie Instanzen von Java2sAutoTextField und Java2sAutoComboBox. Füllen Sie die Vorschlagslisten mit Anfangswerten.

Legen Sie Schriftart, Farben und Anfangstext für das Textfeld und das Kombinationsfeld fest.

Fügen Sie beide Komponenten zu einem JFrame mit einem GridLayout hinzu. Legen Sie den Standard-Schließvorgang und den Speicherort fest und packen Sie den Rahmen für die Anzeige.

Code Beispiel:

import java.awt.*;
import java.util.ArrayList;
import javax.swing.*;

public class AutoCompleteTextField {

    // ...

    public AutoCompleteTextField() {
        // ...
        someTextField.setFont(new Font("Serif", Font.BOLD, 16));
        someTextField.setForeground(Color.black);
        someTextField.setBackground(Color.orange);
        someTextField.setName("someTextField");
        someTextField.setDataList(listSomeString);

        someComboBox.setPrototypeDisplayValue("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");
        someComboBox.setFont(new Font("Serif", Font.BOLD, 16));
        someComboBox.setForeground(Color.black);
        someComboBox.setBackground(Color.YELLOW);
        ((JTextField) someComboBox.getEditor().getEditorComponent()).setDisabledTextColor(Color.black);
        someComboBox.setName("someComboBox");
        someComboBox.setDataList(listSomeAnotherString);

        // ...
    }

    // ...
}

Ausgabe:

How to Implement Real-Time Auto-Completion with JTextfield and JList in Java?

Hinweis:

Diese Lösung bietet eine grundlegende Autovervollständigungsfunktion. Die Vorschlagsliste ist statisch und kann so angepasst werden, dass sie dynamische Daten enthält.

Das obige ist der detaillierte Inhalt vonWie implementiert man die automatische Vervollständigung in Echtzeit mit JTextfield und JList in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn