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

📄 usermenu.java

📁 学生project 火车时刻查询系统 软件工程文档-英文。对需要软件工程文档的朋友有写帮助
💻 JAVA
字号:
/** * creating User Menu (both the Users and Administrators) with Swing */import javax.swing.*;import java.awt.event.*;import java.awt.*;import java.util.*;import java.sql.*;import java.util.Properties;import java.net.*;public class UserMenu extends JApplet{    String[] Names_user = new String[50];    String[] description_user = new String[50];    int[][] Edges_user = new int[50][3];    int       NumStart_user,      NumEnd_user,      VertexNum_user,      EdgeNum_user;        private JLabel       l1_user = new JLabel("From:"),      l2_user = new JLabel("To:"),      l3_user = new JLabel("Departure Date:"),      l4_user = new JLabel("Time:"),      l5_user = new JLabel("Day"),      l6_user = new JLabel("Month"),      l7_user = new JLabel("Hour"),      l8_user = new JLabel("Minutes");          private JTextField      t1_user = new JTextField(15),      t2_user = new JTextField(15);    private JTextArea t_user = new JTextArea(20, 40);    private JButton       b1_user = new JButton("Start search"),      b2_user = new JButton("New search");        private String[]      descriptionDay = {"","01","02","03","04","05","06","07","08","09",          "10","11","12","13","14","15","16","17","18","19","20","21",          "22","23","24","25","26","27","28","29","30","31"},      descriptionMonth = {"","Jan","Feb","Mar","Apr","May","Jun","Jul",          "Aug","Sep","Oct","Nov","Dec"},      descriptionHour = {"","01","02","03","04","05","06","07","08","09",          "10","11","12","13","14","15","16","17","18","19","20","21",          "22","23","24"},          descriptionMinutes = {"","00","15","30","45"};    private JComboBox       c1_user = new JComboBox(),      c2_user = new JComboBox(),      cDay = new JComboBox(),      cMonth = new JComboBox(),      cHour = new JComboBox(),      cMinutes = new JComboBox();    private int      count1 = 0,      count2 = 0,      count3 = 0,      count4 = 0;          public void init()    {        try        {            Arrays.fill(Names_user,"");            Driver driver = (Driver) Class.forName("com.jnetdirect.jsql.JSQLDriver").newInstance();            String connectStr = "jdbc:JSQLConnect://127.0.0.1/database=G6/user=sa";            Connection  conn = driver.connect(connectStr, new Properties());            Statement stmt = conn.createStatement();                DatabaseMetaData db = conn.getMetaData();            String v = "select * from Stations";            PreparedStatement s = conn.prepareStatement(v);            ResultSet rs = s.executeQuery();                                int i = 1;            while( rs.next())            {                Names_user[i] = rs.getString("Name").trim();                i++;            }        }catch(Exception e1){}                description_user = Names_user;        for(int i=0; i<description_user.length; i++)        {            String s = description_user[i];            if ( !s.equals("") || i==0 )            {                c1_user.addItem(s);                c2_user.addItem(s);             }        }        for(int i = 0; i < descriptionDay.length; i++)        cDay.addItem(descriptionDay[count1++]);        for(int i = 0; i < descriptionMonth.length; i++)        cMonth.addItem(descriptionMonth[count2++]);        for(int i = 0; i < descriptionHour.length; i++)        cHour.addItem(descriptionHour[count3++]);        for(int i = 0; i < descriptionMinutes.length; i++)        cMinutes.addItem(descriptionMinutes[count4++]);        b1_user.addActionListener(al1_user);        b2_user.addActionListener(al2_user);        Container cp = getContentPane();        cp.setLayout(new FlowLayout());        t_user.setForeground(Color.blue);                cp.add(l1_user);        cp.add(c1_user);        cp.add(l2_user);        cp.add(c2_user);        cp.add(l3_user);        cp.add(cDay);        cp.add(l5_user);        cp.add(cMonth);        cp.add(l6_user);        cp.add(l4_user);        cp.add(cHour);        cp.add(l7_user);        cp.add(cMinutes);        cp.add(l8_user);        cp.add(b1_user);        cp.add(b2_user);        cp.add(t_user);    }        ActionListener       al1_user = new ActionListener()      {          public void actionPerformed(ActionEvent e)          {              String                s1 = ((String)c1_user.getSelectedItem()).toLowerCase(),                s2 = ((String)c2_user.getSelectedItem()).toLowerCase();                            try              {                  Arrays.fill(Names_user,"");                  Driver driver = (Driver) Class.forName("com.jnetdirect.jsql.JSQLDriver").newInstance();                  String connectStr = "jdbc:JSQLConnect://127.0.0.1/database=G6/user=sa";                  Connection  conn = driver.connect(connectStr, new Properties());                  Statement stmt = conn.createStatement();                      DatabaseMetaData db = conn.getMetaData();                     String v = "select * from Stations";                  PreparedStatement s = conn.prepareStatement(v);                  ResultSet rs = s.executeQuery();                  int i=1;                  while (rs.next())                  {                        Names_user[i] = rs.getString("Name").trim();                        i++;                  }                  v = "select * from Routes";                  s = conn.prepareStatement(v);                  rs= s.executeQuery();                  int j = 0;                  while (rs.next())                  {                        Edges_user[j][0]=rs.getInt("start_station");                        Edges_user[j][1]=rs.getInt("end_station");                        Edges_user[j][2]=rs.getInt("weight");                        j++;                  }                  EdgeNum_user = j;                  v = "select Num from Stations where Name = '"+s1+"'";                  s = conn.prepareStatement(v);                  rs= s.executeQuery();                  while (rs.next())                  {                        NumStart_user = rs.getInt("Num");                  }                                    v = "select Num from Stations where Name = '"+s2+"'";                  s = conn.prepareStatement(v);                  rs= s.executeQuery();                  while (rs.next())                  {                        NumEnd_user = rs.getInt("Num");                  }                                }catch(Exception e1){}                            boolean goodID = true;                            if ( s1.equals("") && !s2.equals("") )              {                  goodID = false;                  JOptionPane.showMessageDialog(null,                     "Please select a departure station!",                     "Error!", JOptionPane.ERROR_MESSAGE);              }                            if ( s2.equals("") && !s1.equals("") )              {                  goodID = false;                  JOptionPane.showMessageDialog(null,                     "Please select a destination station!",                     "Error!", JOptionPane.ERROR_MESSAGE);              }                              if ( s1.equals("") && s2.equals("") )              {                  goodID = false;                  JOptionPane.showMessageDialog(null,                     "Please select the departure and destination stations",                     "Error!", JOptionPane.ERROR_MESSAGE);              }                            if ( s1.equals(s2) && goodID )              {                  goodID = false;                  JOptionPane.showMessageDialog(null,                     "The depart and arrive stations can not be same!",                     "Error!", JOptionPane.ERROR_MESSAGE);              }                             if ( !s1.equals(s2) && goodID )                  {                     int a1 = NumStart_user;                  int b1 = NumEnd_user;                  Route r = new Route(a1, b1);                  r.Edge = Edges_user;                  r.EdgeNum = EdgeNum_user;                  int[] stationNums = r.showRoutes(a1, b1);                  ArrayList a = new ArrayList();                                  if ( stationNums[0] != 999 )                  {                       for(int i=1; i<stationNums.length; i++)                       {                           if( stationNums[i] != 0 )                           {                               try                               {                                   Driver driver = (Driver) Class.forName("com.jnetdirect.jsql.JSQLDriver").newInstance();                                   String connectStr = "jdbc:JSQLConnect://127.0.0.1/database=G6/user=sa";                                   Connection  conn = driver.connect(connectStr, new Properties());                                   Statement stmt = conn.createStatement();                                       DatabaseMetaData db = conn.getMetaData();                                      String v = "select Name from Stations where Num = '"+stationNums[i]+"'";                                   PreparedStatement s = conn.prepareStatement(v);                                   ResultSet rs = s.executeQuery();                                   while (rs.next())                                   {                                       a.add(rs.getString("Name").trim());                                                                          }                                                                }catch(Exception e1){}                                                         }                                                 }                        a.add( Integer.toString(stationNums[0]) );                   }                  t_user.append("Departure station:" + s1 +                  "            " + "Destination station:" + s2 + "\n");                  if ( a.size() !=0 )                  {                      t_user.append("The fastest route:" + "\n");                      for(int i=0; i<a.size()-2; i++)                      t_user.append(a.get(i) + " --> ");                      t_user.append(a.get(a.size()-2) + "\n");                      t_user.append("Time consuming: " + a.get(a.size()-1) + "\n" + "\n");                  }                  else                  t_user.append("Sorry!There is no route from" + " " + s1 + " "                   + "to" + " " + s2 + " " + "." + "\n" + "\n");               }          }      },      al2_user = new ActionListener()      {          public void actionPerformed(ActionEvent e)          {              t1_user.selectAll();              t1_user.cut();              t2_user.selectAll();              t2_user.cut();              t_user.selectAll();              t_user.cut();              c1_user.setSelectedItem(description_user[0]);              c2_user.setSelectedItem(description_user[0]);              cDay.setSelectedItem(descriptionDay[0]);              cMonth.setSelectedItem(descriptionMonth[0]);              cHour.setSelectedItem(descriptionHour[0]);              cMinutes.setSelectedItem(descriptionMinutes[0]);          }      };  }

⌨️ 快捷键说明

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