首頁 >Java >java教程 >如何在Java中使用JTextfield和JList實現即時自動補全?

如何在Java中使用JTextfield和JList實現即時自動補全?

Linda Hamilton
Linda Hamilton原創
2024-11-15 09:05:03890瀏覽

使用JTextfield 和JList 自動完成

問題陳述:

開發一個在輸入字元時提供即時建議的Java 程式進入JTextfield ,使用JList 作為建議清單。

解:

1.先決條件:

  • 對建議數組進行排序以獲得最佳性能。
  • 利用 Java2sAutoTextField 和 Java2sAutoComboBox 類別。
  • 使用適當的方法初始化這些組件值。

2。實作:

建立 Java2sAutoTextField 和 Java2sAutoComboBox 的實例。使用初始值填充建議清單。

設定文字欄位和組合框的字體、顏色和初始文字。

使用 GridLayout 將這兩個元件加入 JFrame。設定預設的關閉操作、位置,並打包框架進行顯示。

程式碼範例:

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

        // ...
    }

    // ...
}

輸出:

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

此解決方案提供了基本的自動完成功能。建議清單是靜態的,可以自訂以包含動態資料。

以上是如何在Java中使用JTextfield和JList實現即時自動補全?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn