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

📄 txb.java

📁 工作流应用源码
💻 JAVA
字号:
package com.softwarematch.workflow;

/*
 *这是一个关于菜单以及事件监听器的例子
 *其中包含了 JMenu JTable JToolBar 等控件的使用
 *本例子用的是access,请先建立txb.mdb
 *由不足之处请指教:shengshuai@126.com
 */
import java.net.*;
import java.io.*;
import java.sql.*;
import java.util.*;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.*;
import javax.swing.UIManager;
import javax.swing.plaf.metal.MetalLookAndFeel;
import java.util.Vector;
import javax.swing.table.DefaultTableModel;

public class txb {
  public txb() {
    fsframe Frame1 = new fsframe();

    Frame1.validate();

    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    Dimension frameSize = Frame1.getSize();
    if (frameSize.height > screenSize.height) {
      frameSize.height = screenSize.height;
    }
    if (frameSize.width > screenSize.width) {
      frameSize.width = screenSize.width;
    }
    Frame1.setLocation( (screenSize.width - frameSize.width) / 2,
                       (screenSize.height - frameSize.height) / 2);
    Frame1.setDefaultCloseOperation(3);
    Frame1.show();
  }

  public static void main(String[] args) {
    try {
      UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");
    }
    catch (Exception e) {
      e.printStackTrace();
    }
    new txb();
  }
}

class fsframe
    extends JFrame
    implements ActionListener {

  JLabel nemelabel = new JLabel("名字:");
  JLabel passlabel = new JLabel("密码:");
  JLabel zhuzhi = new JLabel("家庭住址:");

  JButton insertbutton = new JButton("添加");
  JButton exitbutton = new JButton("退出");

  JTextField namefield = new JTextField("圣帅");
  JTextField passfield = new JTextField("7820131");
  JTextField addr = new JTextField("东营职业学院学2(410)宿舍");

  JTextArea log = new JTextArea(10, 0);
  JTextArea input = new JTextArea(4, 0);

  JPanel inputpanel = new JPanel();
  JPanel buttonpanel = new JPanel();

  JScrollPane logscrollpane = new JScrollPane();
  JScrollPane inputsrollpane = new JScrollPane();

  JMenuBar Bare = new JMenuBar();
  JMenu filemenu = new JMenu("文件(F)");

  JMenuItem jianjie = new JMenuItem("关于本例");
  JMenuItem creattablemenuitem = new JMenuItem("建表");
  JMenuItem exitmenuitem = new JMenuItem("退出");
  JMenu sqlmenu = new JMenu("SQL");

  JMenuItem select = new JMenuItem("查看");
  JMenuItem del = new JMenuItem("删除所有数据");
  JMenuItem deltable = new JMenuItem("删除表");
  JMenu about = new JMenu("关于(A)");
  JMenuItem aboutme = new JMenuItem("关于作者");

  JToolBar toolbar = new JToolBar();

  public fsframe() {

    setSize(Toolkit.getDefaultToolkit().getScreenSize().width / 2, 380);
    this.setResizable(false);
    this.getContentPane().setLayout(new BorderLayout());
    filemenu.setMnemonic(KeyEvent.VK_F);
    sqlmenu.setMnemonic(KeyEvent.VK_S);
    about.setMnemonic(KeyEvent.VK_A);

    Bare.add(filemenu);
    filemenu.add(creattablemenuitem);
    filemenu.add(exitmenuitem);
    exitmenuitem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Q,
        ActionEvent.CTRL_MASK)); // 快捷键

    Bare.add(sqlmenu);
    sqlmenu.add(select);
    select.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,
                                                 ActionEvent.CTRL_MASK));
    select.addActionListener(this);
    sqlmenu.add(del);
    del.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_D,
                                              ActionEvent.CTRL_MASK));
    del.addActionListener(this);
    sqlmenu.addSeparator();
    sqlmenu.add(deltable);
    deltable.addActionListener(this);

    Bare.add(about);
//about.add (jianjie);
    jianjie.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Z,
                                                  ActionEvent.CTRL_MASK));
    about.add(aboutme);
    aboutme.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F4,
                                                  ActionEvent.ALT_MASK));

    this.setJMenuBar(Bare);

//-----menu action --------

    exitmenuitem.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent exi) {
        System.exit(0);
      }
    });
    jianjie.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent jiaj) {
        JOptionPane.showMessageDialog(null,
            "这是一个关于布局和监听器的例子本例子的操作都对表user执行请先建立数据库txb.mdb");
      }
    });
    aboutme.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent jiaj) {
        JOptionPane.showMessageDialog(null, "姓名:范圣帅 Email:shengshuai@126.com 网址:http://www.shengshuai.260.cn http://www.myjavaserver.com/~shengshuai");
      }
    });
    creattablemenuitem.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent creatt) {
        creattablemenuitemframe creattablemenuitem1 = new
            creattablemenuitemframe();
        creattablemenuitem1.show();
        creattablemenuitem1.hide();
      }
    });

//----end----menu action -//

    Container contentpane = getContentPane();
    contentpane.setLayout(new BorderLayout());

    toolbar.add(jianjie);
//toolbar.add(insertbutton);
    contentpane.add(toolbar, BorderLayout.NORTH);

    contentpane.add(inputpanel, BorderLayout.CENTER);
    inputpanel.setLayout(new GridLayout(3, 2));
    inputpanel.add(nemelabel);
    inputpanel.add(namefield);
    inputpanel.add(passlabel);
    inputpanel.add(passfield);
    inputpanel.add(zhuzhi);
    inputpanel.add(addr);
    addr.addActionListener(this);

    contentpane.add(buttonpanel, BorderLayout.SOUTH);
    buttonpanel.add(insertbutton);
    insertbutton.addActionListener(this);
    buttonpanel.add(exitbutton);
    exitbutton.addActionListener(this);

//-------------button action-------------

  }

  public void actionPerformed(ActionEvent ae) {
    Object source = ae.getSource();
    JFrame resultframe = new JFrame();
    JScrollPane jScrollPane1 = new JScrollPane();
    JTable jTable1 = new JTable();
// --------查询数据--------------------------------------
    if (source == select) {
      access ctm = new access();
      ResultSet rs = ctm.executeQuery("SELECT * From user");
      try {
        getContentPane().add(jScrollPane1);
        Vector vcol = new Vector(); //列名
        Vector vrow = new Vector(); //内容
        vcol.addElement("名字");
        vcol.addElement("密码");
        vcol.addElement("住址");
        while (rs.next()) {
          Vector vr1 = new Vector();
          vr1.addElement(rs.getString("username"));
          vr1.addElement(rs.getString("userpass"));
          vr1.addElement(rs.getString("address"));
          vrow.addElement(vr1);
        }

        DefaultTableModel dtm = new DefaultTableModel(vrow, vcol);
        jTable1 = new JTable(vrow, vcol);
        jTable1.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); //滚动条设置左右滚
        jScrollPane1.getViewport().add(jTable1, null); //在滚动条中放入表
        resultframe.getContentPane().add(jScrollPane1);
        resultframe.setSize(400, 400);
        resultframe.setLocation(200, 20);
        resultframe.show();
      }
      catch (SQLException sqa) {
        System.out.print(sqa);
      }
//--------删除数据----------
    }
    else if (source == del) {
      access ctm = new access();
      ctm.executeUpdate("DELETE * FROM USER");

//---------删除表-----------

    }
    else if (source == deltable) {
      String tablename = JOptionPane.showInputDialog("请输入要删除的表名", "user");
      access ctm = new access();
      ctm.executeUpdate("DROP TABLE " + tablename);

//-------插入数据------------
    }
    else if (source == insertbutton) {
      access ctm = new access();
      String name = namefield.getText().trim();
      String pass = passfield.getText().trim();
      String address = addr.getText().trim();
//System.out.print(name+pass);
      ctm.executeUpdate(
          "INSERT INTO user (username,userpass,address) VALUES ('" + name +
          "','" + pass + "','" + address + "')");

    }
    else if (source == exitbutton) {
      System.exit(0);
    }

  }

}

class creattablemenuitemframe
    extends JFrame {
  public creattablemenuitemframe() {
//    String tablename = JOptionPane.showInputDialog("请输入表名", "user");
//    access ctm = new access();
//    ctm.executeUpdate("CREATE TABLE " + tablename +
//                      "(username string ,userpass string,address string )");
//    hide();
//  }

    Object[] possibleValues = { "First", "Second", "Third" }; //用户的选择项目
//    String[] possibleValues = { "First", "Second", "Third" }; //用户的选择项目
    File file=new File("c:\\");
    File list[]=file.listFiles();

    for(int i=0;i<list.length;i++)
    {
        try {
          if (list[i].isDirectory()) {
            //new ListFiles().listFile(list[i].toString());
          }
          String aa  = list[i].toString();
          System.out.println("aa="+aa);
        }catch(Exception e){

        }
    }


    Object selectedValue = JOptionPane.showInputDialog(null, "Choose one", "Input",JOptionPane.INFORMATION_MESSAGE, null, possibleValues, possibleValues[0]);
    setTitle("您按下了"+(String)selectedValue+"项目");


  }
}

class access {
  String dbDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
  String strCon = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=";
  Connection con = null;
  ResultSet rs = null;
  Statement stmt = null;
  public access() {
    try {
      Class.forName(dbDriver);
    }
    catch (java.lang.ClassNotFoundException e) {
      System.err.println("数据库驱动程序加载失败,异常为:" + e.getMessage());
    }
    finally {
      System.out.println("驱动程序加载成功");
    }
  }

  public ResultSet executeQuery(String strSQL) {
    rs = null;
    try {
      con = DriverManager.getConnection(strCon + "txb.mdb");
      Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
                                           ResultSet.CONCUR_READ_ONLY);
      rs = stmt.executeQuery(strSQL);

    }
    catch (SQLException ex) {
      JOptionPane.showMessageDialog(null,
                                    "executeQuery在执行" + strSQL + "失败了,异常为: " +
                                    ex.getMessage());
    }
    finally {
      System.out.println("executeQuery--数据库连接成功");
    }
    return rs;
  }

  public void executeUpdate(String strSQL) {
    try {
      con = DriverManager.getConnection(strCon + "txb.mdb");
      stmt = con.createStatement();
      stmt.executeUpdate(strSQL);

    }
    catch (SQLException ex) {
      JOptionPane.showMessageDialog(null,
                                    "executeUpdate在执行" + strSQL + "失败了,异常为: " +
                                    ex.getMessage());
    }
  }

}

⌨️ 快捷键说明

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