2013-04-28 74 views
0

我有一個swing應用程序,我的應用程序讓用戶輸入名字,姓氏和電話號碼。用戶點擊添加按鈕,並將條目添加到jlist(所以它就像電話簿)。我在JList上面有一個jTextfield,我想允許用戶在Jlist上搜索特定的名稱或電話號碼,所以它類似於谷歌搜索,鍵入一個字符,並在JList中顯示帶有相關字符的名稱,這樣。我真的卡住了,在這一點上失去了任何幫助將appricated?如何通過我的JList進行搜索?

這是我的添加按鈕的代碼名稱添加到我的jList:

private void btnAddContactActionPerformed(java.awt.event.ActionEvent evt) { 

    String firstName = txtFirstName.getText(); 
    String lastName = txtLastName.getText(); 
    String phoneNum = (txtPhoneNum.getText()); 
    NumberFormat number = NumberFormat.getNumberInstance(); 
    //Phone Number formatted 
    StringBuilder sb = new StringBuilder(phoneNum).insert(0, "(") 
      .insert(4,")").insert(8,"-"); 
    String phoneNumFormatted = sb.toString(); 

    contactsArrayList.add(firstName + "\t " + lastName + "\t " + phoneNumFormatted); 
    DefaultListModel<String> model = new DefaultListModel<>(); 
    for(int i = 0; i < contactsArrayList.size(); i++) 
    { 
     String myArraylst = contactsArrayList.get(i); 
     model.addElement(myArraylst + "\t"); 
    } 

    listPhoneBookContacts.setModel(model); 
    txtFirstName.setText(""); 
    txtLastName.setText(""); 
    txtPhoneNum.setText(""); 

} 

回答

0

這是可以實現這種Swing中的東西,但它是粗糙的,你不可能做一個好工作它(因爲它很難)。你可能最好把它放到其他圖書館,比如SwingX。他們有一堆你可以使用的組件,它們可能正是你想要的。

如果您不想使用該功能,Google快速搜索會顯示good tutorial for filtering JLists

0

我的應用程序讓用戶輸入名字,姓氏和電話號碼

我會用一個JTable來顯示所有這些信息。

所以它有點像谷歌搜索你輸入一個字符,它顯示了與相關人物

JTable有內置的過濾名。查看Sorting and Filtering的工作示例

相關問題