Java JButton未按预期工作
我在JDialog中为一个JButton执行了这个操作,我希望它在每次按下它时添加行。但它不能像我希望的那样工作,也不能向我的查看表中添加行Java JButton未按预期工作,java,jtable,jbutton,rows,Java,Jtable,Jbutton,Rows,我在JDialog中为一个JButton执行了这个操作,我希望它在每次按下它时添加行。但它不能像我希望的那样工作,也不能向我的查看表中添加行 private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: int activity_number =
private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
int activity_number = -1;
for (HashMap.Entry<Integer ,String> entry : ad_activity_table_hashmap.entrySet()){
if (entry.getValue() == jComboBox2.getSelectedItem()){
activity_number = entry.getKey();
}
}
if (jTextField17.getText().equals("") || jTextField19.getText().equals("")){
JOptionPane.showConfirmDialog(null, "لطفا همه فيلد ها را پر كنيد", "Message", JOptionPane.PLAIN_MESSAGE);
}
else if (!FinancialDocumentsJFrame.checkDocumentAmountText(jTextField17.getText())){
JOptionPane.showConfirmDialog(null, "ورودي مبلغ فعاليت نامعتبر است لطفا دوباره بررسي كنيد", "Message", JOptionPane.PLAIN_MESSAGE);
}
else if (!FinancialDocumentsJFrame.checkNumberText(jTextField19.getText())){
JOptionPane.showConfirmDialog(null, "ورودي شماره قرارداد نامعتبر است لطفا دوباره بررسي كنيد", "Message", JOptionPane.PLAIN_MESSAGE);
}
else if (jComboBox2.getSelectedIndex()==-1){
JOptionPane.showConfirmDialog(null, "شرح فعاليت انتخاب نشده است لطفا دوباره بررسي كنيد", "Message", JOptionPane.PLAIN_MESSAGE);
}
else if (!activity_hashmap.isEmpty()){
if (activity_number == -1){
System.out.println("Error in Activity Number");
JOptionPane.showConfirmDialog(null, "اشكال در شماره فعاليت لطفا دوباره تلاش كنيد", "Message", JOptionPane.PLAIN_MESSAGE);
}
else {
boolean exists = activity_hashmap.containsKey(activity_number);
if (exists){
JOptionPane.showConfirmDialog(null, "ورودي موجود است لطفا دوباره بررسي كنيد", "Message", JOptionPane.PLAIN_MESSAGE);
}
}
}
else {
int activity_amount = Integer.parseUnsignedInt(jTextField17.getText());
int activity_contract_number = Integer.parseUnsignedInt(jTextField19.getText());
int activity_document_number = Integer.parseUnsignedInt(jTextField13.getText());
String activity_st = jComboBox2.getSelectedItem().toString();
Activity act = new Activity(activity_st, activity_number, activity_amount, activity_contract_number, activity_document_number);
act.printactivitytInformation();
activity_hashmap.put(activity_number, act);
if (jTable1.getRowCount()==0){
System.out.println("No Rows!!!");
count_activities_amount = activity_amount;
Object[] row = { activity_contract_number, Integer.parseUnsignedInt(jTextField16.getText())-count_activities_amount, activity_amount, activity_st, activity_document_number };
DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
model.addRow(row);
}
else {
System.out.println("Have Rows!!!");
for (int j=1;j<=jTable1.getRowCount();j++){
count_activities_amount += Integer.parseUnsignedInt(jTable1.getValueAt(j, 3).toString());
}
Object[] row = { activity_contract_number, Integer.parseUnsignedInt(jTextField16.getText())-count_activities_amount, activity_amount, activity_st, activity_document_number };
DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
model.addRow(row);
}
DefaultTableCellRenderer centerRenderer = new DefaultTableCellRenderer();
centerRenderer.setHorizontalAlignment( SwingConstants.CENTER);
jTable1.setDefaultRenderer(String.class, centerRenderer);
jTable1.repaint();
jButton2.setEnabled(true);
jButton3.setEnabled(true);
jTextField18.setText(count_activities_amount.toString());
}
}
private void jButton4ActionPerformed(java.awt.event.ActionEvent evt){
//TODO在此处添加您的处理代码:
int活动_编号=-1;
for(HashMap.Entry:ad_activity_table_HashMap.entrySet()){
if(entry.getValue()==JCombox2.getSelectedItem()){
活动编号=entry.getKey();
}
}
if(jTextField17.getText().equals(“”)jTextField19.getText().equals(“”){
JOptionPane.showConfirmDialog(空,“消息”,JOptionPane.PLAIN消息);
}
如果(!FinancialDocumentsJFrame.CheckDocumentMountText(jTextField17.getText()),则为else{
JOptionPane.showConfirmDialog(null,“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”);
}
如果(!FinancialDocumentsJFrame.checkNumberText(jTextField19.getText()),则为else{
JOptionPane.showConfirmDialog(空,“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”);
}
else if(jcombox2.getSelectedIndex()=-1){
JOptionPane.showConfirmDialog(null,“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”);
}
如果(!activity_hashmap.isEmpty()){
如果(活动编号==-1){
System.out.println(“活动编号错误”);
JOptionPane.showConfirmDialog(null,“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”、“空”);
}
否则{
boolean exists=activity\u hashmap.containsKey(activity\u编号);
如果(存在){
JOptionPane.showConfirmDialog(空,“消息”,JOptionPane.PLAIN消息);
}
}
}
否则{
int activity_amount=Integer.parseUnsignedInt(jTextField17.getText());
int activity_contract_number=Integer.parseUnsignedInt(jTextField19.getText());
int activity_document_number=Integer.parseUnsignedInt(jTextField13.getText());
字符串活动\u st=JCombox2.getSelectedItem().toString();
活动法案=新活动(活动编号、活动编号、活动金额、活动合同编号、活动文件编号);
行为。印刷活动信息();
activity_hashmap.put(activity_编号,act);
if(jTable1.getRowCount()==0){
System.out.println(“无行!!!”;
盘点活动金额=活动金额;
Object[]行={activity_contract_number,Integer.parseUnsignedInt(jTextField16.getText())-count_activities_amount,activity_amount,activity_st,activity_document_number};
DefaultTableModel=(DefaultTableModel)jTable1.getModel();
model.addRow(row);
}
否则{
System.out.println(“Have Rows!!!”;
最后,我意外地发现了这个问题
我当时正在编写张贴在
然后我剪切并粘贴我在这里找到的if子句
else if (!activity_hashmap.isEmpty()){
if (activity_number == -1){
System.out.println("Error in Activity Number");
JOptionPane.showConfirmDialog(null, "اشكال در شماره فعاليت لطفا دوباره تلاش كنيد", "Message", JOptionPane.PLAIN_MESSAGE);
}
else {
boolean exists = activity_hashmap.containsKey(activity_number);
if (exists){
JOptionPane.showConfirmDialog(null, "ورودي موجود است لطفا دوباره بررسي كنيد", "Message", JOptionPane.PLAIN_MESSAGE);
}
}
}
没有任何向表中添加活动对象。因此,第一次单击按钮后,我不会向表中添加任何数据。:)
这就是为什么他们说,即使你确定,也要检查你的if子句