You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
205 lines
4.9 KiB
205 lines
4.9 KiB
package com.hm.ui;
|
|
|
|
import java.awt.BorderLayout;
|
|
import java.util.ArrayList;
|
|
import java.util.Vector;
|
|
|
|
import javax.swing.JButton;
|
|
import javax.swing.JFrame;
|
|
import javax.swing.JLabel;
|
|
import javax.swing.JOptionPane;
|
|
import javax.swing.JPanel;
|
|
import javax.swing.JScrollPane;
|
|
import javax.swing.JTable;
|
|
import javax.swing.JTextField;
|
|
import javax.swing.table.DefaultTableModel;
|
|
|
|
import com.hm.bean.Pinpin;
|
|
import com.hm.dao.PinpinDao;
|
|
|
|
public class MainFrame extends JFrame {
|
|
//上面
|
|
JPanel jp1 = new JPanel();
|
|
//查询 根据多字段查询
|
|
JLabel jl = new JLabel("活动:");
|
|
JTextField jt = new JTextField(10);
|
|
JLabel jl1 = new JLabel("用途:");
|
|
JTextField jt1 = new JTextField(10);
|
|
JButton jb = new JButton("查询");
|
|
JButton ripx = new JButton("按照日期排序");
|
|
JButton slpx = new JButton("查看接取状态");
|
|
|
|
//中间
|
|
JPanel jp2 = new JPanel();
|
|
DefaultTableModel dtm = new DefaultTableModel();
|
|
JTable jta = new JTable(dtm);
|
|
JScrollPane jsp = new JScrollPane(jta);
|
|
|
|
//下面
|
|
JPanel jp3 = new JPanel();
|
|
JButton jb1 = new JButton("发布任务");
|
|
JButton jb2 = new JButton("删除任务");
|
|
JButton jb3 = new JButton("修改任务");
|
|
JButton jb4 = new JButton("接取任务");
|
|
|
|
//显示数据表格
|
|
PinpinDao bd = new PinpinDao();
|
|
private void show(Pinpin b) {
|
|
ArrayList<Pinpin> li = bd.select(b);
|
|
//清除之前的数据表格
|
|
for(int i=0;i<dtm.getRowCount();i++) {
|
|
dtm.setRowCount(0);
|
|
}
|
|
for(int i=0;i<li.size();i++) {
|
|
Vector<Object> v = new Vector<>();
|
|
v.add(li.get(i).getId());
|
|
v.add(li.get(i).getName());
|
|
v.add(li.get(i).getPress());
|
|
v.add(li.get(i).getTime());
|
|
v.add(li.get(i).getNum());
|
|
dtm.addRow(v);
|
|
}
|
|
}
|
|
private void riqipx(Pinpin b) {
|
|
ArrayList<Pinpin> li = bd.riqipx(b);
|
|
//清除之前的数据表格
|
|
for(int i=0;i<dtm.getRowCount();i++) {
|
|
dtm.setRowCount(0);
|
|
}
|
|
for(int i=0;i<li.size();i++) {
|
|
Vector<Object> v = new Vector<>();
|
|
v.add(li.get(i).getId());
|
|
v.add(li.get(i).getName());
|
|
v.add(li.get(i).getPress());
|
|
v.add(li.get(i).getTime());
|
|
v.add(li.get(i).getNum());
|
|
dtm.addRow(v);
|
|
}
|
|
}
|
|
private void shuliangpx(Pinpin b) {
|
|
ArrayList<Pinpin> li = bd.shuliangpx(b);
|
|
//清除之前的数据表格
|
|
for(int i=0;i<dtm.getRowCount();i++) {
|
|
dtm.setRowCount(0);
|
|
}
|
|
for(int i=0;i<li.size();i++) {
|
|
Vector<Object> v = new Vector<>();
|
|
v.add(li.get(i).getId());
|
|
v.add(li.get(i).getName());
|
|
v.add(li.get(i).getPress());
|
|
v.add(li.get(i).getTime());
|
|
v.add(li.get(i).getNum());
|
|
dtm.addRow(v);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public MainFrame() {
|
|
this.setTitle("首页");// 设置窗口标题
|
|
this.setSize(800, 500);// 设置窗口大小
|
|
this.setLocationRelativeTo(null);// 设置窗口居中
|
|
this.setDefaultCloseOperation(3);// 设置窗口关闭程序自动结束
|
|
this.setResizable(true);// 设置窗口不可更改
|
|
// 添加第一部分
|
|
jp1.add(jl);
|
|
jp1.add(jt);
|
|
jp1.add(jl1);
|
|
jp1.add(jt1);
|
|
jp1.add(jb);
|
|
jp1.add(ripx);
|
|
jp1.add(slpx);
|
|
|
|
jb.addActionListener((e) -> {
|
|
// 按钮点击事件
|
|
Pinpin b = new Pinpin();
|
|
String name = jt.getText();
|
|
b.setName(name);
|
|
String press = jt1.getText();
|
|
b.setPress(press);
|
|
show(b);
|
|
});
|
|
|
|
ripx.addActionListener((e) ->{
|
|
Pinpin b = new Pinpin();
|
|
String name = jt.getText();
|
|
b.setName(name);
|
|
String press = jt1.getText();
|
|
b.setPress(press);
|
|
riqipx(b);
|
|
});
|
|
slpx.addActionListener((e) ->{
|
|
Pinpin b = new Pinpin();
|
|
shuliangpx(b);
|
|
});
|
|
|
|
// 添加第二部分
|
|
dtm.addColumn("编号");
|
|
dtm.addColumn("活动");
|
|
dtm.addColumn("用途");
|
|
dtm.addColumn("日期");
|
|
dtm.addColumn("状态");
|
|
show(null);
|
|
|
|
// 添加第三部分
|
|
jp3.add(jb1);
|
|
jp3.add(jb2);
|
|
jp3.add(jb3);
|
|
jp3.add(jb4);
|
|
|
|
// 增加
|
|
jb1.addActionListener((e) -> {
|
|
//跳转一个新的窗口
|
|
new AddFrame();
|
|
dispose();
|
|
});
|
|
|
|
//删除
|
|
jb2.addActionListener((e) -> {
|
|
//选中你要删除的行
|
|
int i = jta.getSelectedRow();
|
|
if(i>=0) {
|
|
//获取选中这一行的id
|
|
Object o = dtm.getValueAt(i, 0);
|
|
int id = Integer.parseInt(o.toString());
|
|
//是否删除
|
|
int j = JOptionPane.showConfirmDialog(null, "确认删除吗?");
|
|
if(j==0) {
|
|
//确认删除
|
|
bd.delete(id);
|
|
show(null);
|
|
}
|
|
}else {
|
|
JOptionPane.showMessageDialog(null, "请选择你要删除的行");
|
|
}
|
|
});
|
|
|
|
//修改
|
|
jb3.addActionListener((e) -> {
|
|
//选中你要修改的行
|
|
int i = jta.getSelectedRow();
|
|
if(i>=0) {
|
|
//获取选中这一行的id
|
|
Object o = dtm.getValueAt(i, 0);
|
|
int id = Integer.parseInt(o.toString());
|
|
Pinpin b = bd.selectId(id);
|
|
new UpdateFrame(b);
|
|
dispose();
|
|
}else {
|
|
JOptionPane.showMessageDialog(null, "请选择你要修改的行");
|
|
}
|
|
});
|
|
|
|
|
|
this.add(jp1, BorderLayout.NORTH);
|
|
this.add(jsp, BorderLayout.CENTER);
|
|
this.add(jp3, BorderLayout.SOUTH);
|
|
|
|
this.setVisible(true);// 显示窗口
|
|
}
|
|
public static void main(String[] args) {
|
|
new MainFrame();
|
|
}
|
|
|
|
}
|