Example #1
0
 // 添加餐台信息方法
 public void addInfo() {
   for (int i = 0; i < jtf.length - 1; i++) {
     sb.append(Constant.ADD_POINT + jtf[i].getText().toString()); // 将JTextField的值添加到字符串sb中
   }
   for (int i = 0; i < jcb.length; i++) // 将JComboBox的值添加到字符串sb中
   {
     sb.append(Constant.ADD_POINT + jcb[i].getSelectedItem().toString());
   }
   SocketClient.ConnectSevert(sb.toString()); // 将信息传给服务器
   String addbackinfo = SocketClient.readinfo;
   if (addbackinfo.equals("ok")) // 如果返回“ok”
   {
     // 添加成功后重新显示
     JOptionPane.showMessageDialog(AddPoint.this, "添加餐台成功", "消息", JOptionPane.INFORMATION_MESSAGE);
     this.dispose(); // 关闭当前界面
     SocketClient.ConnectSevert(GET_POINT + curnode.toString()); // 从服务器获得餐台信息
     String getinfo = SocketClient.readinfo;
     Vector<Vector<String>> data = TypeExchangeUtil.strToVector(getinfo); // 重新建表
     MainUI.createJTable(data, title, 20, MainUI.topheight, MainUI.midwidth, MainUI.buttomheight);
     new AddPoint(curnode, mainui);
   } else { // 否则,出提示信息"添加失败,请检查输入信息"
     JOptionPane.showMessageDialog(
         AddPoint.this, "添加失败,请检查输入信息", "消息", JOptionPane.INFORMATION_MESSAGE);
   }
   for (int i = 1; i < jtf.length; i++) // JTextField置空
   {
     jtf[i].setText("");
   }
 }
Example #2
0
  // 初始化添加餐台界面
  public void initUI() {
    Image image = this.getToolkit().getImage("src/com/bn/image/tb1.jpg"); // 定义图片
    this.setIconImage(image); // 设置界面图标
    this.setLayout(null); // 设置界面布局器为默认
    jl[0].setBounds(width / 2 - 80, 2, 200, topf + 10); // 设置jl[0]的位置与大小
    jl[0].setFont(new Font("宋体", Font.BOLD, 24)); // 设置jl[0]字体
    this.add(jl[0]); // 将jl[0]添加到界面中
    for (int i = 1; i < jl.length; i++) // 设置JLabel的字体、位置与大小,并将JLabel添加到界面中
    {
      jl[i].setFont(new Font("宋体", Font.BOLD, 18));
      if (i % 2 != 0) {
        jl[i].setBounds(leftf, topf + topv * (i - 1), leftm, topv);
      } else {
        jl[i].setBounds(2 * leftf + leftm + leftb, topf + topv * (i - 2), leftm, topv);
      }
      this.add(jl[i]);
    }
    jtf[0].setBounds(leftf + leftm, topf, leftb, topv); // 设置JTextField的位置与大小
    // 获取餐台最大值(自动显示最大值并且不可改)
    SocketClient.ConnectSevert(Constant.GET_MAXPOINTNO);
    String maxno = SocketClient.readinfo;
    jtf[0].setText(maxno); // 设置jtf[0]的值
    jtf[0].setEditable(false); // 设置jtf[0]为不可编辑
    jtf[1].setBounds(2 * leftf + 2 * leftm + leftb, topf, leftb, topv); // 设置jtf[1]的位置与大小
    jtf[2].setBounds(leftf + leftm, topf + 4 * topv, leftb, topv); // 设置jtf[2]的位置与大小
    jtf[3].setBounds(2 * leftf + 2 * leftm + leftb, topf + 4 * topv, leftb, topv); // 设置jtf[3]的位置与大小
    jcb[0].setBounds(leftf + leftm, topf + 2 * topv, leftb, topv); // 设置jcb[0]的位置与大小
    jcb[1].setBounds(2 * leftf + 2 * leftm + leftb, topf + 2 * topv, leftb, topv); // 设置jcb[1]的位置与大小
    jb[0].setBounds(leftf + leftm, topf + 6 * topv, 80, 30); // 设置jb[0]的位置与大小
    jb[1].setBounds(2 * leftf + 2 * leftm + leftb / 2, topf + 6 * topv, 80, 30); // 设置jb[1]的位置与大小
    for (int i = 0; i < jtf.length; i++) // 将JTextField添加到界面中
    {
      this.add(jtf[i]);
    }
    // 通过服务器获得餐厅名称
    SocketClient.ConnectSevert(Constant.GET_RMNAME);
    String allname = SocketClient.readinfo;
    // 通过服务器获得餐台类型名
    SocketClient.ConnectSevert(Constant.GET_RTNAME);
    String alltname = SocketClient.readinfo;
    String str[] = TypeExchangeUtil.getStringInfo(allname, 0); // 将餐厅名称放入数组中
    String strt[] = TypeExchangeUtil.getStringInfo(alltname, 0); // 将餐台类型名放入数组中
    for (String s : strt) // 将餐台类型名添加到jcb[0]的选项中
    {
      jcb[0].addItem(s);
    }
    for (String s : str) // 将餐厅名添加到jcb[1]的选项中
    {
      jcb[1].addItem(s);
    }
    jcb[1].setSelectedItem(curnode.toString()); // jcb[1]的选中项是当前节点
    for (int i = 0; i < 2; i++) // 将JComboBox、JButton添加到界面中
    {
      this.add(jb[i]);
      this.add(jcb[i]);
    }
    jb[0].addActionListener // 添加按钮添加监听
        (
        new ActionListener() {
          @Override
          public void actionPerformed(ActionEvent e) {
            addInfo(); // 调用addInfo方法
          }
        });
    jb[1].addActionListener // 取消按钮添加监听
        (
        new ActionListener() {
          @Override
          public void actionPerformed(ActionEvent e) {
            for (int i = 1; i < jtf.length; i++) {
              jtf[i].setText(""); // JTextField置空
            }
          }
        });

    jtf[1].addActionListener // jtf[1]添加监听
        (
        new ActionListener() {
          @Override
          public void actionPerformed(ActionEvent e) {
            jcb[0].requestFocus(); // 获得焦点
          }
        });
    jcb[0].addActionListener // jcb[0]添加监听
        (
        new ActionListener() {
          @Override
          public void actionPerformed(ActionEvent e) {
            jcb[1].requestFocus(); // 获得焦点
          }
        });
    jtf[2].addActionListener // jtf[2]添加监听
        (
        new ActionListener() {
          @Override
          public void actionPerformed(ActionEvent e) {
            jtf[3].requestFocus(); // 获得焦点
          }
        });
    jtf[3].addActionListener // jtf[3]添加监听
        (
        new ActionListener() {
          @Override
          public void actionPerformed(ActionEvent e) {
            jb[0].requestFocus(); // jb[0]获得焦点
          }
        });
    jcb[1].addActionListener // jcb[1]添加监听
        (
        new ActionListener() {
          @Override
          public void actionPerformed(ActionEvent e) {
            jtf[2].requestFocus(); // jtf[2]获得焦点
          }
        });
    this.setBounds(300, 150, 480, 320); // 设置界面的位置与大小
    this.setTitle("添加餐台"); // 设置界面的标题
    this.setAlwaysOnTop(true); // 设置界面总是在顶
    this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); // 设置关闭方式
    this.setVisible(true); // 设置为可见
    jtf[1].requestFocusInWindow(); // jtf[1]获得焦点
  }