搜索带有关键事件的jlist

v64noz0r  于 2021-07-06  发布在  Java
关注(0)|答案(1)|浏览(269)

我的java代码有问题。我在找一个 JList ,关键事件,但似乎什么都找不到。
通过这次活动,我为自己的生活增添了价值 JList :

DefaultListModel<String> model = new DefaultListModel<>();
private void productButtonActionPerformed(java.awt.event.ActionEvent evt) {                                                   
    for (Shop i : shopSettings.Products) {
        model.addElement(i.getProductName()+i.getPrice()+i.getProductCategory()+i.getNumber());
    }
    jList1.setModel(model);
}

在这里,我试图通过 JList ,但每当我写东西时,它只会覆盖列表,而不显示任何内容。

private void jTextField1KeyReleased(java.awt.event.KeyEvent evt) {                                        
    DefaultListModel filteredProducts = new DefaultListModel();
    for (Shop i: shopSettings.Products) {
        String productName=i.getProductName()+i.getPrice()+i.getProductCategory()+i.getNumber().toLowerCase();
        if(productName.contains(jTextField1.getText().toLowerCase()));
        {
            model.addElement(i.getProductName()+i.getPrice()+i.getProductCategory()+i.getNumber());
        }
    }
    model=filteredProduct;
    jList1.setModel(model);
}

抱歉,如果答案太明显了,我刚刚开始学习java。

qmb5sa22

qmb5sa221#

可以是:

String productName= (i.getProductName()+i.getPrice()+i.getProductCategory()+i.getNumber()).toLowerCase();

最好了解调试器在您选择的ide中是如何工作的,并逐步检查算法以了解其不匹配的原因。
编辑:更清楚:呼叫 toLowerCase 关于连接的结果,而不仅仅是最后一部分。

相关问题