⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmxmfl.java

📁 用JAVA SWT编写的住院管理系统。用SQLServer数据库
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
		 {	
			 if(tmp2.equals("") || tmp2.indexOf("'")!= -1)
			 {	
			 	diplayMsg("提示信息","您输入了无效名称,此次操作被取消",
									SWT.YES);
			 }
			 else 
			 {	
					selectNode.setText(tmp2);
					selectNode.setData("FLMS",tmp2);
					db.addpreSQL("UPDATE SFFL SET FLMS = '"+tmp2+"' WHERE FLDM='"+selectNode.getData("FLDM").toString()+"'");
					//db.exepreSQL();//测试用
					prepreSQLCount++;
			 }
		  }
		 	else
		  {
		 		System.out.println("取消了修改");
		  }	
	}
			
	/**
	* 函数名:delNode
	* 编写者:祝鹏举
	* 功  能: 删除树中的选中节点,操作前先提示用户
	* 输入参数:TreeItem selectNode
	* 输出参数:无
	* 备  注:2005.9.17
	*/	
	private void delNode(TreeItem selectNode)
	{	
		//返回当前节点的子节点数目
		int childCount = selectNode.getItemCount();
		String Msg;
		String FLDM = selectNode.getData("FLDM").toString().trim();
		//判断节点数目
		if(childCount > 0)
		{
			Msg = "确实要删除这个节点及其子节点吗?";
		}
		else 
		{
			Msg = "确实要删除这个节点吗?";
		}
		
		int var = diplayMsg("提示信息",Msg,
								SWT.ICON_QUESTION|SWT.YES|SWT.NO);
		if(var == SWT.YES)
		{
			db.addpreSQL("DELETE FROM SFFL WHERE FLDM LIKE '"+FLDM+"%'");
			//db.exepreSQL();
			prepreSQLCount++;
			selectNode.dispose();
		}	
		
	}
	
	/**
	* 函数名:insertNode
	* 编写者:祝鹏举
	* 功  能: 为树为当前选中节点插入一个同级节点
	* 输入参数:TreeItem selectNode
	* 输出参数:无
	* 备  注:2005.9.22
	*/	
	private void insertNode(TreeItem selectNode)
	{	
		TreeItem prantNode=selectNode.getParentItem();
		if(prantNode!=null)
		{	
			this.insertChildNode(prantNode);
		}
		else
		{
			this.insertChildNode();
		}
		
	}
		
	/**
	* 函数名:insertChildNode
	* 编写者:祝鹏举
	* 功  能: 为树为当前选中节点插入一个子节点
	* 输入参数:TreeItem selectNode
	* 输出参数:无
	* 备  注:2005.9.17
	*/	
	private void insertChildNode(TreeItem selectNode)
	{	
		//首先检查层数
		String nowDM=selectNode.getData("FLDM").toString();
		if(nowDM.length()<6)
		{
			//两步
			//1 根据当前节点,计算出新节点的代码
			
			String newDM;
			TreeItem[] childNodes = selectNode.getItems();
			int ItemCount=selectNode.getItemCount();
			if(ItemCount<1)
			{
				newDM=nowDM+"AA";
			}
			else
			{	//取得最大代码,然后用creatNewDM计算新代码
				String maxDM = childNodes[ItemCount-1].getData("FLDM").toString();
				newDM=this.creatNewDM(maxDM);
			}
			
			//2 获取分类名称,在树上添加该节点,preSQL中存放SQL操作,为操作数据库作准备
			 FrmXMFLInput dlg = new FrmXMFLInput(this.shell);
			 dlg.setInput("");
			 dlg.setText("新设分类");
			 dlg.setMessage("输入新分类名称:");
			 String tmp2=dlg.open();
			 //System.out.println(tmp2);
			 if(tmp2!=null)
			 {
				 if(tmp2.equals("") || tmp2.indexOf("'")!= -1)
				 {
				 	diplayMsg("提示信息","您输入了无效名称,此次操作被取消",
										SWT.YES);
				 }
				 else 
				 {	
				 		TreeItem nodeSub = new TreeItem(selectNode,SWT.NULL);
						nodeSub.setText(tmp2);
						nodeSub.setData("FLDM",newDM);
						nodeSub.setData("FLMS",tmp2);
						db.addpreSQL("INSERT INTO SFFL (FLDM, FLMS) VALUES('"+newDM+"','"+tmp2+"')");
						//db.exepreSQL();//测试用
						prepreSQLCount++;
						selectNode.setExpanded(true);
				 }
			  }
			 	else
			  {
			 		System.out.println("取消了输入");
			  }	
		  }
		  else
		  {
		  	diplayMsg("提示信息","已经达到最大分类层数。",
										SWT.YES);
		  }
	}
	
    /**
	* 函数名:重载一次insertChildNode,实现插入顶层节点的同级节点
	*编写者:祝鹏举
	* 功  能: 为树插入一个第一层的节点
	* 输入参数:Tree tree
	* 输出参数:无
	* 备  注:2005.9.22
	*/	
	private void insertChildNode()
	{	//两步
		//1 根据当前节点,计算出新节点的代码
		String newDM;
		TreeItem[] childNodes = tree.getItems();
		int ItemCount=tree.getItemCount();
		if(ItemCount<1)
		{
			newDM="AA";
		}
		else
		{	//取得最大代码,然后用creatNewDM计算新代码
			String maxDM = childNodes[ItemCount-1].getData("FLDM").toString();
			newDM=this.creatNewDM(maxDM);
		}
		
		//2 获取分类名称,在树上添加该节点,preSQL中存放SQL操作,为操作数据库作准备
		 FrmXMFLInput dlg = new FrmXMFLInput(this.shell);
		 dlg.setText("新设分类");
		 dlg.setMessage("输入新分类名称:");
		 dlg.setInput("");
		 String tmp2=dlg.open();
		 //System.out.println(tmp2);
		 if(tmp2!=null)
		 {
			 if(tmp2.equals("") || tmp2.indexOf("'")!= -1)
			 {
			 	diplayMsg("提示信息","您输入了无效名称,此次操作被取消",
									SWT.YES);
			 }
			 else 
			 {	
			 		TreeItem nodeSub = new TreeItem(tree,SWT.NULL);
					nodeSub.setText(tmp2);
					nodeSub.setData("FLDM",newDM);
					nodeSub.setData("FLMS",tmp2);
					db.addpreSQL("INSERT INTO SFFL (FLDM, FLMS) VALUES('"+newDM+"','"+tmp2+"')");
					//db.exepreSQL();//测试用
					prepreSQLCount++;
				
			 }
		  }
		 	else
		  {
		 		System.out.println("取消了输入");
		  }	
	}
	
	/**
	* 函数名:creatNewDM
	* 编写者:祝鹏举
	* 功  能: 为树为当前选中节点插入一个子节点
	* 输入参数:String nowDM 当前代码
	* 输出参数:String  计算出的下一个代码
	* 备  注:2005.9.21
	*/	
	private String creatNewDM(String nowDM)
	{	
		char lsTemp1st,lsTemp2nd;
		//获取最大子节点倒数2个字符
			lsTemp1st = nowDM.charAt(nowDM.length() - 2);
			lsTemp2nd = nowDM.charAt(nowDM.length() - 1);
		//判断最后一位是否为Z,即是否需要高位进位
		if(lsTemp2nd < 'Z')
		{
			lsTemp2nd++;
		}
		else
		{
			lsTemp2nd = 'A';
			lsTemp1st++;
		}
		nowDM = nowDM.substring(0,nowDM.length()-2);
		
		nowDM += lsTemp1st;
		nowDM += lsTemp2nd;
		return nowDM;
	}
		
	
	/**
	* 函数名:saveData
	* 编写者:祝鹏举
	* 功  能:保存经过编辑的节点标签名称
	* 输入参数:无
	* 输出参数:无
	* 备  注:2005.9.22
	*/	
	private void saveData()
	{	
		try
		{	if(prepreSQLCount>0)
			{
		
				db.exepreSQL();
				int var = diplayMsg("提示信息","已经成功完成"+prepreSQLCount+"项数据库操作,退出本窗口吗?",
									SWT.ICON_QUESTION|SWT.YES|SWT.NO);
				prepreSQLCount=0;
				if(var == SWT.YES)
				{	
					db.closeDB();
					shell.getDisplay().dispose();
					shell.dispose();
			
				}	
			}
			
		}
		catch(Exception se)
		{	
			diplayMsg("提示信息","数据写入出错,请联系我们!",
								SWT.YES);
	        System.err.println(se.getMessage());
		}

	}
	
	/**
	* 函数名:remindsaveData
	* 编写者:祝鹏举
	* 功  能:提醒用户保存数据  暂时未用
	* 输入参数:无
	* 输出参数:无
	* 备  注:2005.9.22
	*/	
	private void remindsaveData()
	{	
		String Msg="您对数据库的操作有"+prepreSQLCount+"条没有保存,是否需要保存?";
		int Msgvar=diplayMsg("提示信息",Msg,SWT.ICON_QUESTION|SWT.YES|SWT.NO);
		if(Msgvar == SWT.YES)
		{
			try
			{	
				db.exepreSQL();
				prepreSQLCount=0;
			}
			catch(Exception se)
			{	
				diplayMsg("提示信息","数据写入出错,请联系我们!",
									SWT.YES);
		        System.err.println(se.getMessage());
			}
		}
		else
		{
			prepreSQLCount=0;
			db.clearpreSQL();
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -