Maison >Java >javaDidacticiel >Comment implémenter la saisie semi-automatique en temps réel avec JTextfield et JList en Java ?

Comment implémenter la saisie semi-automatique en temps réel avec JTextfield et JList en Java ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-15 09:05:03890parcourir

Auto-complétion avec JTextfield et JList

Énoncé du problème :

Développer un programme Java qui fournit des suggestions en temps réel lors de la saisie de caractères dans un JTextfield, en utilisant une JList comme suggestion liste.

Solution :

1. Prérequis :

  • Triez votre tableau de suggestions pour des performances optimales.
  • Utilisez les classes Java2sAutoTextField et Java2sAutoComboBox.
  • Initialisez ces composants avec les valeurs appropriées.

2. Implémentation :

Créer des instances de Java2sAutoTextField et Java2sAutoComboBox. Remplissez les listes de suggestions avec des valeurs initiales.

Définissez la police, les couleurs et le texte initial pour le champ de texte et la zone de liste déroulante.

Ajoutez les deux composants à un JFrame avec un GridLayout. Définissez l'opération de fermeture par défaut, l'emplacement et emballez le cadre pour l'affichage.

Code Exemple :

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);

        // ...
    }

    // ...
}

Sortie :

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

Remarque :

Cette solution fournit une fonctionnalité de saisie semi-automatique de base. La liste de suggestions est statique et peut être personnalisée pour inclure des données dynamiques.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn