JTable中的搜索结果

redit_10

我有一个程序,允许用户在仓库中进行搜索。结果返回到JTable中。

到目前为止,一切都很好。当我尝试进行第二次搜索时,旧表仍在显示。

图像:

在此处输入图片说明

代码:

public void panelTable(){
    panelTable= new JPanel();
    panelTable.setSize(400, 80);
    panelTable.setOpaque(true);
    panelTab =  new JTable();
    modele  = new DefaultTableModel();
}

public void creerJTable(List<Pneu> liste){
    String[] head= {"A", "B", "C"};
    Object[][] data = null;
    
    data = new Object[liste.size()][3];
    Iterator<Pneu> it = liste.iterator();
    int index = 0;
    
    while(it.hasNext()){
        Pneu unPneu = it.next();
        data[index][0] = unPneu.descrip();
        data[index][1] = unPneu.width();
        data[index][2] = unPneu.height();
        index++;
    }

    modele.setDataVector(data, head);
    
    panelTab.setModel(modele);
    
    panelTab.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    panelTab.setFillsViewportHeight(true);
    panelTab.setPreferredScrollableViewportSize(new Dimension(500, 80));
    panelTab.setModel(modeleColonnesNoEdit(data, entete));

    panelTab.setRowSelectionInterval(0, 0);
    panelTab.getColumnModel().getColumn(0).setPreferredWidth(250);
    panelTab.getColumnModel().getColumn(1).setResizable(false);
    panelTab.getColumnModel().getColumn(1).setPreferredWidth(50);
    panelTab.getColumnModel().getColumn(2).setResizable(false);
    panelTab.getColumnModel().getColumn(2).setPreferredWidth(50);

    JScrollPane scrollPane = new JScrollPane(panelTab);
    scrollPane.setPreferredSize(new Dimension(500, 60));

    panelTable.add(scrollPane);
}

单击搜索按钮时,您将进入侦听器类,该类将验证是否单击了按钮搜索。完成后,您将获得以下代码:

frame.creerJTable(清单);

这行代码获取通过该搜索创建的列表,并调用上面代码中显示的方法creerJTable(List liste)。

这是modeleColonnesNoEdit()的代码

private DefaultTableModel modeleColonnesNoEdit(Object[][] data, String[] head) {
        
    return new DefaultTableModel(data, head)
    {
        
        boolean[] columnEditables = new boolean[] { false, false, false};

        public boolean isCellEditable(int row, int column) {
            return columnEditables[column];
        }
    };
}
充满鳗鱼的气垫船

您不应在搜索中重新添加JScrollPane或在GUI中添加任何新组件。取而代之的是,采用原始的JTable,只需更改其TableModel,仅此而已,什么也不做。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

JTable中的搜索结果

来自分类Dev

结果设置在jtable中

来自分类Dev

如何将选择列添加到显示搜索结果的JTable中

来自分类Dev

显示来自jquery jtable中搜索的数据

来自分类Dev

java - sql 结果未显示在 jTable 中

来自分类Dev

弹性搜索:限制数组中的搜索结果

来自分类Dev

IntelliJ从搜索列表中删除搜索结果

来自分类Dev

在Jekyll搜索中限制搜索结果

来自分类Dev

在MYSQL查询的搜索结果中搜索

来自分类Dev

在Jekyll搜索中限制搜索结果

来自分类Dev

弹性搜索:限制数组中的搜索结果

来自分类Dev

在搜索结果页面中显示过滤的结果

来自分类Dev

在列表中搜索并检索结果

来自分类Dev

Eclipse中搜索结果的断点

来自分类Dev

在django中搜索查询结果

来自分类Dev

从表中检索搜索结果

来自分类Dev

从搜索结果中删除PDF

来自分类Dev

如何从 jTable 中的文件中读取和搜索?

来自分类Dev

在JTable中搜索-未获得正确的输出

来自分类Dev

ElasticSearch:在搜索结果中包含内部对象

来自分类Dev

搜索结果中的Chrome扩展程序图标

来自分类Dev

在WordPress中更改给定搜索结果的URL

来自分类Dev

AngularJS中的实时搜索:更新结果

来自分类Dev

从UISearchController的过滤搜索结果中删除

来自分类Dev

筛选后的搜索结果中的Django分页

来自分类Dev

计算搜索结果中的总关联号

来自分类Dev

搜索结果中的共享事件文本

来自分类Dev

在Java中获取Google的搜索结果

来自分类Dev

在Powershell中根据CSV过滤搜索结果