package com.java.panel; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Cursor; import java.awt.Font; import java.awt.GridLayout; import java.awt.Image; import java.awt.Panel; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.util.Vector; import javax.swing.DefaultListSelectionModel; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.SwingUtilities; import javax.swing.UIManager; import javax.swing.UnsupportedLookAndFeelException; import javax.swing.table.DefaultTableModel; import com.java.util.MyDbUtil; public class MainPanel extends JFrame { MainPanel mp = this; JTable jtable = null; Vector things = new MyDbUtil().getAllThings(); Vector<String> title = new Vector<>(); JScrollPane left = null; // 左侧面板 JButton jb_edit = new JButton("编辑"); JButton jb_add = new JButton("新增"); JButton jb_delete = new JButton("删除"); Panel right = new Panel(); Image icon=Toolkit.getDefaultToolkit().getImage("icon.png"); public MainPanel() { setTitle("备忘录"); getContentPane().setBackground(new Color(29,177,213)); setIconImage(icon); setDefaultCloseOperation(EXIT_ON_CLOSE); setBounds(100, 50, 600, 600); setVisible(true); setResizable(false); title.add("行号"); title.add("编号"); title.add("标题"); title.add("内容"); title.add("日期"); DefaultTableModel model = new DefaultTableModel(things, title); jtable = new JTable(model) { @Override public boolean isCellEditable(int row, int column) { return false; } }; jtable.setFont(new Font("宋体", Font.BOLD, 15)); jtable.setRowHeight(30); // 设置表格行高 jtable.setSelectionMode(DefaultListSelectionModel.SINGLE_SELECTION);// 设置表格只能为单选 jtable.getTableHeader().setReorderingAllowed(false); jtable.setBackground(new Color(110,174,220)); //设置表格背景颜色 jtable.setSelectionBackground(Color.blue); jtable.setCursor(new Cursor(Cursor.HAND_CURSOR)); left = new JScrollPane(jtable); left.setOpaque(true); left.getViewport().setBackground(new Color(110,174,220)); //设置滚动菜单没填充区域的颜色 getContentPane().add(left, BorderLayout.WEST); right.setLayout(new GridLayout(20, 1)); right.add(new JLabel("")); right.add(jb_edit); right.add(new JLabel("")); right.add(jb_add); right.add(new JLabel("")); right.add(jb_delete); getContentPane().add(right, BorderLayout.CENTER); jb_add.addActionListener(new ActionListener() { // 新增备忘按钮事件 @Override public void actionPerformed(ActionEvent e) { AddPanel ap = new AddPanel(mp); } }); jb_edit.addActionListener(new ActionListener() {// 编辑备忘按钮事件 @Override public void actionPerformed(ActionEvent e) { int row = jtable.getSelectedRow(); if (row < 0||row+1>new MyDbUtil().getAllThings().size()) { JOptionPane.showMessageDialog(null, "请选中内容再进行编辑"); } else { EditPanel ap = new EditPanel(mp, row); } } }); this.jtable.addMouseListener(new MouseAdapter() { //鼠标双击时候显示详细内容 @Override public void mouseClicked(MouseEvent e) { if(e.getClickCount()==2){//双击事件 int row = jtable.getSelectedRow(); if (row < 0||row+1>new MyDbUtil().getAllThings().size()) { JOptionPane.showMessageDialog(null, "请选中内容再进行编辑"); } else { ShowPanel sp=new ShowPanel(mp, row); } } } }); jb_delete.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { int row = jtable.getSelectedRow(); if (row < 0||row+1>new MyDbUtil().getAllThings().size()) { JOptionPane.showMessageDialog(null, "请选中内容再进行编辑"); } else { int choose=JOptionPane.showConfirmDialog(null, "确认删除选中项?"); if(choose==0){ String snum = mp.jtable.getValueAt(row, 1).toString(); int num = Integer.parseInt(snum.replace("NF", "")); new MyDbUtil().deleteThing(num); mp.things.removeAllElements(); mp.things.addAll(new MyDbUtil().getAllThings()); mp.jtable.updateUI(); //JOptionPane.showMessageDialog(null, "删除成功"); } } } }); try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); SwingUtilities.updateComponentTreeUI(this); } catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } public static void main(String[] args) { MainPanel mp = new MainPanel(); } }
最近下载更多
李朝磊 LV18
2023年11月18日
weilaizhisheng LV21
2023年9月28日
ezra77934 LV2
2023年9月15日
alexcheung LV3
2023年7月10日
微信网友_6292282163859456 LV4
2023年1月5日
计算机暴龙战士 LV19
2022年12月6日
a318888331 LV13
2022年10月31日
alonely23 LV1
2022年10月6日
zhendong LV7
2022年9月26日
xiao小果 LV13
2022年6月22日
最近浏览更多
hanweinan6 LV13
10月9日
2860615178 LV4
5月29日
3334004690 LV10
3月6日
shiaomon
2023年12月14日
暂无贡献等级
Anzhui LV2
2023年12月10日
李朝磊 LV18
2023年11月18日
tianshi LV7
2023年10月19日
weilaizhisheng LV21
2023年9月28日
ezra77934 LV2
2023年9月15日
alexcheung LV3
2023年7月10日