📄 windowframe.java
字号:
package viewtuba1;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.AWTException;
import java.awt.Dimension;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Insets;
import java.awt.MenuItem;
import java.awt.Point;
import java.awt.PopupMenu;
import java.awt.SystemTray;
import java.awt.Toolkit;
import java.awt.TrayIcon;
import java.io.*;
import java.awt.event.MouseAdapter;
import java.util.Vector;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSplitPane;
import javax.swing.JTable;
import javax.swing.JTextArea;
import javax.swing.JTree;
import javax.swing.ListSelectionModel;
import javax.swing.ScrollPaneConstants;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.event.AncestorEvent;
import javax.swing.event.AncestorListener;
import javax.swing.event.CaretEvent;
import javax.swing.event.CaretListener;
import javax.swing.table.DefaultTableModel;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeModel;
import javax.swing.tree.TreeNode;
import model.MyTable;
import model.MyTree;
import control.Console;
public class WindowFrame {
JFrame frame;
Console ccs = new Console();
ListDemo listde = new ListDemo();
MyTable mytable = new MyTable();
MyTree mytree = new MyTree();
static JTable table;
DefaultTableModel dm1;
static JTextArea textArea;
Point mousepoint;
int row;
JTree tree;
DefaultTreeModel treeModel = null;
static JScrollPane sc;
TrayIcon trayIcon;
public static JTextArea getTextArea() {
return textArea;
}
public static void main(String args[]) {
new WindowFrame().getFrame().show();
}
/**
* Create the frame
*
* @param index
*/
public WindowFrame() {
try {
UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (InstantiationException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IllegalAccessException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (UnsupportedLookAndFeelException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
frame = new JFrame();
SwingUtilities.updateComponentTreeUI(frame);
frame.invalidate();
frame.setResizable(false);
// Graphics g = null;
// g.getClass();
// frame.update(g);
frame.pack();
frame.setVisible(true);
frame.setTitle("NNC Center");
if (SystemTray.isSupported()) {
SystemTray tray = SystemTray.getSystemTray();
Image image = Toolkit.getDefaultToolkit().getImage(
"image/tuopan.gif");
PopupMenu popup = new PopupMenu();
MenuItem maxItem = new MenuItem("显示窗口");
maxItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
frame.setVisible(true);
frame.setExtendedState(JFrame.NORMAL);
// SystemTray.getSystemTray().remove(trayIcon);
}
});
MenuItem minItem = new MenuItem("最小化");
minItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
frame.setVisible(false);
}
});
MenuItem exitItem = new MenuItem("退出");
exitItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
System.exit(1);
}
});
popup.add(maxItem);
popup.add(minItem);
popup.addSeparator();
popup.add(exitItem);
trayIcon = new TrayIcon(image, "NNC企业管理V1.0", popup);
try {
tray.add(trayIcon);
} catch (AWTException e) {
System.err.println("无法向这个托盘添加新项: " + e);
}
} else {
System.err.println("无法使用系统托盘!");
}
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// frame.setSize(500, 500);
// frame.setResizable(false);
JMenuBar MBar = buildFileMenu();
// JMenu mfile = buildFileMenu();
// MBar.add(mfile);
frame.setJMenuBar(MBar);
frame.setBounds(100, 100, 633, 488);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JSplitPane splitPane = new JSplitPane();
splitPane.setOneTouchExpandable(true);
splitPane.setBounds(0, 0, 492, 341);
frame.getContentPane().add(splitPane);
final JSplitPane splitPane_1 = new JSplitPane();
splitPane_1.setOneTouchExpandable(true);
splitPane_1.setResizeWeight(1);
splitPane.setLeftComponent(splitPane_1);
splitPane_1.setOrientation(JSplitPane.VERTICAL_SPLIT);
splitPane_1.setContinuousLayout(true);
treeModel = mytree.creatNode();
tree = new JTree((DefaultMutableTreeNode) treeModel.getRoot());
tree.setModel(treeModel);
sc = new JScrollPane();
sc.setViewportView(tree);
// tree.setPreferredSize(new Dimension(0, 0));
// tree.setSelectionRows(null);
// tree.setDropMode(DropMode.INSERT_ROWS);
// tree.setRowHeight(30);
// splitPane1.setOneTouchExpandable(true);
splitPane_1.setLeftComponent(tree);
final JPanel panel = new JPanel();
panel.setPreferredSize(new Dimension(1, 1));
splitPane_1.setRightComponent(panel);
final JButton button_1 = new JButton();
button_1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
new Insert();
}
});
button_1.setMargin(new Insets(2, 6, 2, 6));
button_1.setText("ADD TREENODE");
panel.add(button_1);
final JButton button = new JButton();
button.setMargin(new Insets(2, 6, 2, 6));
button.setText("UPDATE");
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
treeModel = new MyTree().creatNode();
getTree().setModel(treeModel);
getTree().updateUI();
// getTree().show();
}
});
panel.add(button);
JSplitPane splitPane_2 = new JSplitPane();
splitPane_2.setOneTouchExpandable(true);
splitPane_2.setResizeWeight(0.6);
splitPane_2.setOrientation(JSplitPane.VERTICAL_SPLIT);
splitPane.setRightComponent(splitPane_2);
final JPanel panel_1 = new JPanel();
panel_1.setLayout(null);
final JScrollPane scrollPane = new JScrollPane();
scrollPane
.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
scrollPane
.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);
scrollPane.setBounds(0, 32, 426, 157);
panel_1.add(scrollPane);
textArea = new JTextArea();
scrollPane.setViewportView(textArea);
splitPane_2.setLeftComponent(panel_1);
final JButton button_2 = new JButton();
button_2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JFileChooser fc = new JFileChooser();
fc.setCurrentDirectory(new File("d:\\"));
fc.setSelectedFile(new File("CSV.csv"));
int retMethod = fc.showSaveDialog(fc);
File csvFile = fc.getSelectedFile();
String s = ccs.csvLoad();
if (retMethod == JFileChooser.APPROVE_OPTION) {
try {
FileWriter fw = new FileWriter(csvFile);
fw.write(s);
fw.flush();
fw.close();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
}
});
button_2.setText("save");
button_2.setBounds(40, 10, 78, 21);
panel_1.add(button_2);
final JButton button_2_1 = new JButton();
button_2_1.setText("delete");
button_2_1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
// row = table.rowAtPoint(mousepoint)+1;
// table.getModel().removeRow();
row = table.getSelectedRow();
((MyTable) table.getModel()).removeRow(row);
// table.setModel(new MyTable());
table.updateUI();
}
});
button_2_1.setBounds(120, 10, 78, 21);
button_2_1.setOpaque(true);
panel_1.add(button_2_1);
final JButton button_2_2 = new JButton();
button_2_2.setText("show");
button_2_2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
new EmployeeInfo().show();
}
});
button_2_2.setBounds(200, 10, 78, 21);
button_2_2.setOpaque(true);
panel_1.add(button_2_2);
final JButton button_2_3 = new JButton();
button_2_3.setText("searchTags");
table = new JTable();
button_2_3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
String sq = ccs.csvLoad();
textArea.setText(sq);
table.setModel(new MyTable());
table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
table.updateUI();
}
});
button_2_3.setBounds(280, 10, 110, 21);
button_2_3.setOpaque(true);
panel_1.add(button_2_3);
table.updateUI();
table.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
// TODO Auto-generated method stub
// row = table.getSelectedRows();
row = table.getSelectedRow();
}
});
JScrollPane scrollpane_2 = new JScrollPane(table);
scrollpane_2.setPreferredSize(new Dimension(0, 100));
splitPane_2.setRightComponent(scrollpane_2);
}
public JMenuBar buildFileMenu() {
// TODO Auto-generated method stub
JMenuBar jmb = new JMenuBar();
JMenu thefile = new JMenu("EditMenu");
thefile.setMnemonic('E');
JMenuItem insert = new JMenuItem("Insert");
insert.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String st = null;
st = ccs.TempLoginInfoLoad();
if (st.equals("1"))
new Inserta().getFrame().show();
else
JOptionPane.showMessageDialog(null, "您的权限不够,请联系管理员!", "提示",
JOptionPane.CANCEL_OPTION);
}
});
JMenuItem delete = new JMenuItem("Delete");
delete.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
// row = table.rowAtPoint(mousepoint)+1;
// table.getModel().removeRow();
row = table.getSelectedRow();
((MyTable) table.getModel()).removeRow(row);
// table.setModel(new MyTable());
table.updateUI();
}
});
JMenuItem save = new JMenuItem("Save");
save.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JFileChooser fc = new JFileChooser();
fc.setCurrentDirectory(new File("d:\\"));
fc.setSelectedFile(new File("CSV.csv"));
int retMethod = fc.showSaveDialog(fc);
File csvFile = fc.getSelectedFile();
String s = ccs.csvLoad();
if (retMethod == JFileChooser.APPROVE_OPTION) {
try {
FileWriter fw = new FileWriter(csvFile);
fw.write(s);
fw.flush();
fw.close();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
}
});
JMenuItem exit = new JMenuItem("Exit");
exit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
thefile.add(insert);
thefile.add(delete);
thefile.add(save);
thefile.addSeparator();
thefile.add(exit);
jmb.add(thefile);
JMenu thefile1 = new JMenu("Into");
thefile1.setMnemonic('I');
JMenuItem message = new JMenuItem("MessageCenter");
message.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
new MessageCenter().main(null);
}
});
JMenuItem listdemo = new JMenuItem("LoginInfoCenter");
listdemo.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
String str = null;
str = ccs.TempLoginInfoLoad();
if (str.equals("1"))
new ListDemo().main(null);
else
JOptionPane.showMessageDialog(null, "您的权限不够,请联系管理员!", "提示",
JOptionPane.CANCEL_OPTION);
}
});
JMenuItem notice = new JMenuItem("Notice Published");
notice.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
String stp = null;
stp = ccs.TempLoginInfoLoad();
if (stp.equals("1"))
new NoticeCenter().main(null);
else
JOptionPane.showMessageDialog(null, "您的权限不够,请联系管理员!", "提示",
JOptionPane.CANCEL_OPTION);
}
});
thefile1.add(message);
thefile1.add(listdemo);
thefile1.add(notice);
jmb.add(thefile1);
return jmb;
}
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
System.exit(1);
}
public static JTable getTable() {
return table;
}
public JTree getTree() {
return tree;
}
public JFrame getFrame() {
return frame;
}
public JScrollPane getSc() {
return sc;
}
public DefaultTreeModel getTreeModel() {
return treeModel;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -