浏览代码

添加删除数据源的功能

yangzhijie 6 年之前
父节点
当前提交
7af64babbf
共有 1 个文件被更改,包括 47 次插入1 次删除
  1. 47 1
      src/main/java/com/leanwo/management/DataSourceSettingFrame.java

+ 47 - 1
src/main/java/com/leanwo/management/DataSourceSettingFrame.java

@@ -69,8 +69,12 @@ public class DataSourceSettingFrame extends JFrame {
 
 	private static Logger logger = LoggerFactory.getLogger(DataSourceSettingFrame.class);
 	
+	private JTable table;
+	
 	private JButton saveButton;
 
+	private JButton removeButton;
+	
 	// 得到显示器屏幕的宽高
 	private int width = Toolkit.getDefaultToolkit().getScreenSize().width;
 	private int height = Toolkit.getDefaultToolkit().getScreenSize().height;
@@ -100,6 +104,8 @@ public class DataSourceSettingFrame extends JFrame {
         saveButton = new JButton("保存");
         toolbar.add(saveButton);
 
+        removeButton = new JButton("删除");
+        toolbar.add(removeButton);
 
 		JScrollPane scrollPane = new JScrollPane(); // 支持滚动
 		getContentPane().add(scrollPane, BorderLayout.CENTER);
@@ -122,7 +128,7 @@ public class DataSourceSettingFrame extends JFrame {
 		
 		tableModel = new DefaultTableModel(tableValues,columnNames);
 		
-		JTable table = new JTable(tableModel); // 自定义的表格
+		table = new JTable(tableModel); // 自定义的表格
 		table.setAutoResizeMode(JTable.AUTO_RESIZE_LAST_COLUMN); // 关闭表格列的自动调整功能。
 		table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); // 单选
 //		table.setSelectionBackground(Color.YELLOW);
@@ -163,6 +169,15 @@ public class DataSourceSettingFrame extends JFrame {
 				save();
 			}
 		});
+		
+		// 删除按钮
+		this.removeButton.addActionListener(new ActionListener() {
+			@Override
+			public void actionPerformed(ActionEvent e) {
+				remove();
+			}
+		});
+		
 	}
 	
 	/**
@@ -367,4 +382,35 @@ public class DataSourceSettingFrame extends JFrame {
 	    }
 	}
 	
+	/**
+	 * 删除选中的数据源
+	 */
+	private void remove() {
+		int selectedRow = table.getSelectedRow();
+		if(selectedRow < 0) {
+			JOptionPane.showMessageDialog(this, "请先选择要删除的数据源。", "提示:重新启动", JOptionPane.INFORMATION_MESSAGE);
+			return;
+		}
+		Vector vector = tableModel.getDataVector();
+		
+		DataSourceConfig dataSourceConfig = new DataSourceConfig();
+		Vector rowData = (Vector)vector.elementAt(selectedRow);
+		dataSourceConfig.setBeanId((String)rowData.elementAt(0));
+		dataSourceConfig.setUrl((String)rowData.elementAt(1));
+		dataSourceConfig.setUsername((String)rowData.elementAt(2));
+		dataSourceConfig.setPassword((String)rowData.elementAt(3));
+		
+		//添加确认提示框,会返回一个整数
+		int isDelete = JOptionPane.showConfirmDialog(null, "您确定要删除数据源:" + dataSourceConfig.getBeanId() + "吗?本操作不可撤销,如果您确定的话,请点击【确定】按钮,否则点击【取消】按钮。" , "提示", JOptionPane.YES_NO_OPTION);
+		 
+		//如果这个整数等于JOptionPane.YES_OPTION,则说明你点击的是“确定”按钮,则允许继续操作,否则结束
+		if(isDelete == JOptionPane.YES_OPTION){
+		    // 添加业务逻辑。
+			
+			tableModel.removeRow(selectedRow);
+			// 执行删除的业务逻辑
+		    JOptionPane.showMessageDialog(null, "删除成功");
+		}
+			
+	}
 }