Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在使用按钮保存之前,检查JTable中是否没有空行?_Java_Swing_Jtable - Fatal编程技术网

Java 在使用按钮保存之前,检查JTable中是否没有空行?

Java 在使用按钮保存之前,检查JTable中是否没有空行?,java,swing,jtable,Java,Swing,Jtable,大家好,我有一个关于检查JTable中的空行的问题,它可以告诉用户在使用bush按钮保存数据之前忘记了什么。。我有18列和无限行,所以我想要的是创建一个方法,我可以用ok_btn调用,或者我必须创建按钮本身的内部操作 ok_btnActionPerformed(java.awt.event.ActionEvent evt) { if (not empty){ //do somthing this.dispose(); else{ JOptionPaneShowMessageDialog(nul

大家好,我有一个关于检查JTable中的空行的问题,它可以告诉用户在使用bush按钮保存数据之前忘记了什么。。我有18列和无限行,所以我想要的是创建一个方法,我可以用ok_btn调用,或者我必须创建按钮本身的内部操作

ok_btnActionPerformed(java.awt.event.ActionEvent evt) { 
if (not empty){
//do somthing
this.dispose();
else{
JOptionPaneShowMessageDialog(null,"you forget something!");
}
我想检查第7列和第12列


提前感谢

我不知道您的表格或表格模型的结构,但您可以这样做:

ok_btnActionPerformed(java.awt.event.ActionEvent evt) { 

 boolean isEmpty = false;
 for (int i = 0; i < jTable1.getRowCount(); i++) { //for column 7
     if (jTable1.getValueAt(i, 7).toString().equals("")) {
           isEmpty = true;
           break;
     }
   }

   if (!notEmpty){
      //do somthing
      this.dispose();
   else{
      JOptionPaneShowMessageDialog(null,"you forget something!");
}
ok\u btnActionPerformed(java.awt.event.ActionEvent evt){
布尔isEmpty=false;
对于(int i=0;i
好,这是我更新后的代码:

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


              boolean isEmpty7 = false;boolean isEmpty12 = false;
     for (int i = 0; i < table.getRowCount(); i++) { //for column 7
         if (table.getValueAt(i, 7).toString().equals("0.0")) {
               isEmpty7 = true;
               break;
         }

       }
     for (int i = 0; i < table.getRowCount(); i++) {
        if (table.getValueAt(i, 12)==null) {
               isEmpty12 = true;
               break;
         } 
     }

       if (!isEmpty7&&!isEmpty12){
          //do somthing
          this.dispose();
       }else if (isEmpty7&&isEmpty12){
           JOptionPane.showMessageDialog(null,"you forget something");
       }else if(isEmpty7){
          JOptionPane.showMessageDialog(null,"you forget row 7");
       }else if (isEmpty12){
           JOptionPane.showMessageDialog(null,"you forget row 12");
       }
    }
private void btn_OkActionPerformed(java.awt.event.ActionEvent evt){
布尔值isEmpty7=false;布尔值isEmpty12=false;
对于(int i=0;i
很好,谢谢……我可以为其他人更新答案中的代码吗?@AntiAtlasDev:可以。你可以通过点击左边的来接受答案。你因为接受其他用户的答案而赢得声誉,但不是你自己的答案。你知道,最好让你的模型来处理这个问题。模型可以返回所有行这节省了循环1000行和1000列的需要,这可能会变得非常耗时