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

📄 finddlg.java

📁 一个典型的电子通讯录,自己制作的 1.采用JAVA图形用户界面(GUI)进行设计。 2.数据库采用Microsoft Access 2003。 欢迎来到我的主页http://hi.baidu.c
💻 JAVA
字号:
/*选择查找条件对话框*/
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.sql.*;
class FindDlg extends JDialog
{
	public FindDlg(JFrame f,String title,String function)
	{
		super(f,title,true);//创建一个具有指定标题和指定所有者 Frame 的有模式对话框
		Toolkit kit=Toolkit.getDefaultToolkit();//返回默认的工具箱
		Dimension screenSize=kit.getScreenSize();//获得窗口大小
		int screenHeight=screenSize.height;
		int screenWidth=screenSize.width;
		setSize(screenWidth/3,screenHeight/3);//设置窗口大小
		setLocation(screenWidth/3,screenHeight/3);//设置窗口位置
		this.function=function;//用来标记查找后的下一步
		jf=f;
        InitDlg();//对组件进行设置

	 }
	 String function;
	 JFrame jf;
	 public void InitDlg()
	 {
		 panel.setLayout(null);//设置此容器的布局管理器
		 add(panel);

		 condLabel.setBounds(new Rectangle(35,25,95,15));//移动组件并调整其大小
		 condLabel.setFont(new Font("Dialog",Font.BOLD,15));//设置组件的字体
		 condLabel.setText("请选择条件:");//标签
		 panel.add(condLabel);//将组件增加到面板中

		 keyLabel.setBounds(new Rectangle(35,95,110,15));
		 keyLabel.setFont(new Font("Dialog",Font.BOLD,15));
		 keyLabel.setText("请输入关键字:");
		 panel.add(keyLabel);

		 condCombo=new JComboBox(new String[]{"姓名","电话","手机","QQ","Email","分组"});//创建选项
		 condCombo.setBounds(new Rectangle(140,45,110,25));
		 condCombo.setFont(new Font("Dialog",Font.BOLD,15));//设置字体
		 panel.add(condCombo);

		 keyTextField.setBounds(new Rectangle(140,115,180,25));
		 keyTextField.setText("");
		 keyTextField.setFont(new Font("Dialog",Font.BOLD,15));
		 panel.add(keyTextField);



		 conButton.setBounds(new Rectangle(65,165,80,25));
		 conButton.setText("查 找");
		 conButton.setFont(new Font("Dialog",Font.BOLD,15));
		 conButton.addActionListener(new AddDlgListener(this));
		 panel.add(conButton);

		 canButton.setBounds(new Rectangle(175,165,80,25));
		 canButton.setText("取 消");
		 canButton.addActionListener(new AddDlgListener(this));
		 canButton.setFont(new Font("Dialog",Font.BOLD,15));
		 panel.add(canButton);
		 }
		 public void canPerformed()
		 {//"取消"按钮处理函数
			 dispose();//关闭对话框
		 }

		 public void conPerformed()
		 {//"确定"按钮处理函数
			 String key=keyTextField.getText();
			 String item=(String)condCombo.getSelectedItem();//返回此 JComboBox下拉菜单中的项
			 if(key.equals(""))//关键字不能为空
			     JOptionPane.showMessageDialog(null,"查找关键字不能为空,请重新输入!","警告",JOptionPane.WARNING_MESSAGE);
			 else
			 {
				 try
				 {
					 String url="jdBc:Odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=DataBase/ElecComm.mdb";
					 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
					 Connection conn=DriverManager.getConnection(url);
					 Statement sql=conn.createStatement();
					 ResultSet rs=sql.executeQuery("Select * from Book where "+item+" ='"+key+"'");
					 if(rs.next())
					 {//如果有相关信息,则调用Display显示信息
					    if(function.equals("find"))//如果功能是查询,则显示查询结果对话框
						{
							this.dispose();//关闭原来窗口
						    DisplayDlg disdlg=new DisplayDlg(jf,item,key);//传递到下一个窗口,显示联系人的信息
						    disdlg.setVisible(true);//设置可见
						}
						 else if(function.equals("delete"))//如果功能是删除,则显示删除对象对话框
						{
							this.dispose();
							DelDlg deldlg=new DelDlg(jf,item,key);//传递到下一个窗口,显示删除对象对话框
							deldlg.setVisible(true);
						}
						 else if(function.equals("change"))//如果功能是修改,刚显示修改对话框
						 {
							 this.dispose();
							 ChaDlg chadlg=new ChaDlg(jf,item,key);
							 chadlg.setVisible(true);
						 }
					 }
					 else
					 {
						 JOptionPane.showMessageDialog(null,"没有您要查找的相关信息!","警告",JOptionPane.WARNING_MESSAGE);
					 }

				 }
				 catch(Exception e)
				 {
					JOptionPane.showMessageDialog(null,"联接数据源出错","警告",JOptionPane.WARNING_MESSAGE);
				    e.printStackTrace();
				}
			}


		 }

		 JPanel panel=new JPanel();
		 JLabel condLabel =new JLabel();
		 JLabel keyLabel=new JLabel();
		 JComboBox condCombo;//存放选条件
		 JTextField keyTextField=new JTextField();//查找关键字
		 JButton conButton=new JButton();//确定查找按钮
		 JButton canButton=new JButton();//取消按钮

 }
 class AddDlgListener implements ActionListener
		 {//输入条件对话框 按钮监听器
			 public AddDlgListener(FindDlg dlg)
			 {
				 this.dlg=dlg;//同名格式
			 }
			 public void actionPerformed(ActionEvent event)
			 {
				 if(event.getSource()==dlg.canButton)//判断按下的是"取消"按钮
				      dlg.canPerformed();//调用"取消"按钮处理函数
				 else if(event.getSource()==dlg.conButton)//确定查找按钮
				      dlg.conPerformed();//调用"确定查找"按钮
			 }
			 FindDlg dlg;
		 }


⌨️ 快捷键说明

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