【问题标题】:How to check ticked or not check box of a jTable如何检查 jTable 的复选框是否打勾
【发布时间】:2016-03-14 05:56:12
【问题描述】:

我需要检查是否选中了复选框,以便可以删除或修改相应的行。 我正在使用在每次插入时都会更改的动态 jTable。

  DefaultTableModel model = (DefaultTableModel)tab1.getModel();
  model.setRowCount(0);
  try{
      Class.forName("java.sql.Driver");
      Connection conn =      (Connection)DriverManager.getConnection("jdbc:mysql://localhost:3306/radees","root","123");
      Statement st = conn.createStatement();
      String query="SELECT * FROM stage ORDER BY Nom,ecole ";
      ResultSet rs = st.executeQuery(query);
      while(rs.next()){
          String d1 = rs.getString("Nom");
          String d2 = rs.getString("Prenom");
          String d3 = rs.getString("CIN");
          String d4 = rs.getString("Service");
          String d5 = rs.getString("debut");
          String d6 =rs.getString("fin");
          String d7 =rs.getString("ecole");
          model.addRow(new Object[] {d1,d2,d3,d4,d5,d6,d7});


      }

      rs.close();
      st.close();
      conn.close();
  }



    catch(Exception e){
        JOptionPane.showMessageDialog(this,"Erreur de Connection!");
    }
  jLabel9.setText(tab1.getModel().getValueAt(1,6).toString());

【问题讨论】:

    标签: java swing checkbox jtable


    【解决方案1】:

    只需调用方法

    public Object getValueAt(int row, int col)

    您的表模型,rowcol 复选框是。它应该返回一个Boolean 对象 (布尔值的默认呈现是复选框)。

    【讨论】:

    • JCheckBox 永远不会从此处发布的代码中生成,请阅读 Oracle 教程如何使用表来处理工作代码示例
    • 把你的 facebook 给我,我会把图片发给你,因为我使用 NETBEANS 添加它好吗??
    • 在第 6 列有一个字符串对象,而不是布尔值。
    【解决方案2】:

    勾选或不勾选以下代码

              DailydatasTbl.getModel().addTableModelListener(new TableModelListener() {
            public void tableChanged(TableModelEvent e) {
            int row = e.getFirstRow();
            TableModel model = (TableModel)e.getSource();
            String changedValue = model.getValueAt(row, 0).toString();
            Boolean checked=(Boolean) model.getValueAt(row, 0);
    
            if(checked==true){
                popupMenu = new JPopupMenu();
                menuItemAdd = new JMenuItem("Add New Row");
                menuItemRemove = new JMenuItem("Remove Current Row");
                menuItemRemoveAll = new JMenuItem("Remove All Rows");
    
               // menuItemAdd.addActionListener(this);
              // menuItemRemove.addActionListener(this);
              //menuItemRemoveAll.addActionListener(this);
    
                  popupMenu.add(menuItemAdd);
                  popupMenu.add(menuItemRemove);
                   popupMenu.add(menuItemRemoveAll);
                popupMenu.setLocation((int)jButton1.getLocation().getX(),(int)jButton1.getLocation().getY()-10);
                  popupMenu.setVisible(true);
    
            }else{
                  popupMenu.setVisible(false);
            }
    
        }
    
    }); 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-20
      • 2015-08-13
      • 1970-01-01
      • 1970-01-01
      • 2013-02-21
      • 2012-11-07
      • 2023-04-04
      • 2020-11-04
      相关资源
      最近更新 更多