package Frame; import java.awt.BorderLayout; import java.awt.Component; import java.awt.Container; import java.awt.Dimension; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.File; import java.util.Iterator; import java.util.List; import java.util.Vector; import javax.swing.Box; import javax.swing.ImageIcon; import javax.swing.JDialog; import javax.swing.JFileChooser; import javax.swing.JInternalFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.JTextField; import javax.swing.filechooser.FileNameExtensionFilter; import javax.swing.table.DefaultTableModel; import javax.swing.table.TableCellRenderer; import javax.swing.table.TableColumn; import ColorAndFont.English; import ColorAndFont.NothJPanel; import ColorAndFont.UIColor; import ColorAndFont.buttonTitle; import DataBase.DatabaseManagement; import Method.GetDeskPath; import PbuliClass.FileIn; import PbuliClass.JButtonModel; import PbuliClass.JlableModel; import PbuliClass.ShowMessage; import PbuliClass.Systems; import PbuliClass.WarningMessage; import PbuliClass.greateTables; import PbuliClass.jinternalFrame; import tbDataModel.Tbicon; import tbDataModel_Dell.Dell_Tbicon; @SuppressWarnings("rawtypes") /** * ´ËÀàÓÃÓÚ¹ÜÀí±êǩͼ±ê*/ public class IconManagement extends jinternalFrame{ /** * */ private static final long serialVersionUID = 1L; jinternalFrame jinerFrame=null; JInternalFrame jinFrame=null; JButtonModel xin_zeng_button=null;//ÐÂÔöͼ±ê°´Å¥ JlableModel iconName=null;//ͼ±êÃû³Æ JTextField iconFile=null;//Îı¾¿ò JButtonModel addicon=null;//ÐÂÔö°´Å¥ JButtonModel altericon=null;//Ð޸ıêÇ© JButtonModel deleteicon=null;//ɾ³ý±êÇ© JButtonModel shua_xin=null;//ˢбêÇ© JScrollPane gdmb=null;//¹ö¶¯Ãæ°å Vector> serchrowData=null;//ËÑË÷Ò³±í¸ñÏòÁ¿ DefaultTableModel tableModel=null; Vector columnName=null; Iterator iterator=null;//ÉêÃ÷µü´úÆ÷ JTable table=null;//ÉêÃ÷±í¸ñ Vector rowData=null; List list=null ; JPanel centerPanel=null;//Öв¿Ãæ°å NothJPanel southJpan=null;//Äϲ¿Ãæ°å JButtonModel button=null; String fileName="";//Îı¾¿òÄÚÈÝ String path;//ͼ±ê±£´æµØÖ· String path2;//ͼ±ê±£´æµØÖ· Container rq; public IconManagement() { rowData=new Vector(); String title="ͼ±ê¹ÜÀí"; if(Systems.sys().getLanguage().equals("English")) { title="Tag Icon management"; } this.setTitle(title); rq=getContentPane();//»ñÈ¡ÈÝÆ÷ rq.setLayout(new BorderLayout()); rq.setBackground(UIColor.getNorth_color()); rq.add(getSouthJpan(),BorderLayout.NORTH); rq.add(getGdmb()); this.setFrameIcon(new ImageIcon("image/icon/iconManage.png"));//ÉèÖô°Ìåͼ±ê } public JScrollPane getGdmb() {//»ñµÃ¹ö¶¯Ãæ°å if(gdmb==null) { gdmb=new JScrollPane(getTable());//¹ö¶¯Ãæ°å gdmb.getViewport().setBackground(UIColor.getNorth_color()); } return gdmb; } public JTable getTable() {//»ñÈ¡table if(table==null) { String[] name1= {"ͼ±êÃû³Æ","ͼ±êÔ¤ÀÀ ","Ìí¼Óʱ¼ä","±¸×¢"};//±í¸ñÁÐÃû String[] name2= {"Icon name", "Icon preview", "Add time", "Remarks"};//±í¸ñÁÐÃû String[] columnNames=English.columnNames(name1, name2); //Ìí¼Ó±í¸ñÁÐÏòÁ¿ columnName=new Vector<>(); for(int i=0;i(); greateTables tables=new greateTables(); tableModel=new DefaultTableModel(rowData, columnName){ /** * */ private static final long serialVersionUID = 1L; // ʵÏÖÈÃÕû¸ö±í¸ñ²»²»ÔÊÐí±»±à¼­ public boolean isCellEditable(int row,int column){ return false; } }; table=tables.getTable(tableModel); getRowData(Dell_Tbicon.getTbicon_vector()); table.getColumnModel().getColumn(1).setPreferredWidth(100);// ÉèÖõÚ3Áпí TableColumn column = table.getColumnModel().getColumn(1);// »ñÈ¡±í¸ñµÚ1ÁжÔÏó table.setRowHeight(40);//ÉèÖñí¸ñÐÐ¸ß column.setCellRenderer(new TableCellRenderer() {// ÉèÖõÚ2ÁеÄäÖȾÆ÷ public Component getTableCellRendererComponent( JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { ImageIcon icon = (ImageIcon) value; JLabel label = new JLabel(icon);// ´´½¨Í¼±ê label.setBackground(table.getSelectionBackground()); // °ÑÑ¡ÔñµÄ±êÇ©ÉèÖÃΪ͸Ã÷ label.setOpaque(true); if (row % 2 == 0) { label.setBackground(UIColor.getTable_1()); } else { label.setBackground(UIColor.getTable_2()); } if(isSelected) { label.setBackground(UIColor.getTable_sekected()); } return label;// °Ñͼ±ê×÷ΪΪäÖȾ¿Ø¼þ } }); } return table; } public JLabel getIconName() {//»ñͼ±êÃû³Æ±êÇ© if(iconName==null) { iconName=new JlableModel(); iconName.setText("ͼ±êÃû³Æ£º"); } return iconName; } public JTextField getIconFile() {//»ñÎı¾¿ò if(iconFile==null) { iconFile=new JTextField(10); } return iconFile; } public void setIconFile(String fileName) {//ÉèÖÃÃû³ÆÎı¾¿òÄÚÈÝ this.fileName=fileName; getIconFile().setText(fileName); } public JButtonModel getAltericon() {//»ñȡɾ³ý¸Ä°´Å¥ if(altericon==null) { altericon=new JButtonModel("ɾ ³ý"); altericon.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { int[] selectedRows=table.getSelectedRows();//±»Ñ¡ÖÐÐеÄË÷Òý¼¯ºÏ if(selectedRows.length !=0) { for(int i=0;i vc ) { Iterator iterator = vc.iterator();//´´½¨µü´úÆ÷ while (iterator.hasNext()) {//µü´úÆ÷´æÔÚÔªËØ Tbicon tbi= iterator.next();//½«µü´úÆ÷ÀïÃæµÄÔªËØ¸øµ½list¼¯ºÏ Vector row = new Vector(); row.add(tbi.getIcon_name()); row.add(tbi.getIcon()); row.add(tbi.getAdd_time()); row.add(tbi.getBeizhu()); tableModel.addRow(row); } } /**ÐÂÔöͼ±ê°´Å¥*/ public JButtonModel get_xin_zeng_button() { if(xin_zeng_button==null) { xin_zeng_button=new JButtonModel("РÔö"); xin_zeng_button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { new add_Dialog("ÐÂÔöͼ±ê"); } }); } return xin_zeng_button; } //ÄÚ²¿Àà class add_Dialog extends JDialog{ /** * */ private static final long serialVersionUID = 1L; JButtonModel que_ding=null;//È·¶¨°´Å¥ JButtonModel qu_xiao=null;//È¡Ïû°´Å¥ JButtonModel shang_chuang=null;//ÉÏ´«Í¼Æ¬°´Å¥ JPanel mb=null;//ÉêÃ÷Ò»¸öÃæ°å JTextField iconNametext=null;//ÊäÈëͼ±êÃû³Æ public add_Dialog(String title) { this.setAlwaysOnTop(true);//×ÜÊÇÖö¥ Toolkit toolkit = getToolkit();// »ñµÃ´°Ì幤¾ß°ü Dimension screenSize = toolkit.getScreenSize();// »ñÈ¡ÆÁÄ»´óС int width = (int) (screenSize.width* 0.5);// ¼ÆËã´°Ìåпí¶È int height = (int) (screenSize.height * 0.5);// ¼ÆËã´°Ìåпí¶È int x0=width-170;//´°Ìåx0×ø±ê int y0=height-90;//´°Ìåy0×ø±ê Container rq=getContentPane(); rq.add(getMb()); this.setTitle(title); this.setBounds(x0, y0, 340,180); this.setVisible(true); } /**»ñÈ¡Ãæ°å*/ public JPanel getMb() { if(mb==null){ mb=new JPanel(); mb.setLayout(null); iconNametext=new JTextField(10); get_shang_chuang().setBounds(30, 30,80,25); iconNametext.setBounds(120, 30, 100,25); getQue_ding().setBounds(30, 90, 50, 25); getQu_xiao().setBounds(110, 90, 50, 25); mb.add(get_shang_chuang()); mb.add(iconNametext); mb.add(getQue_ding()); mb.add(getQu_xiao()); } return mb; } /**»ñȡȷ¶¨°´Å¥µÄ·½·¨*/ public JButtonModel getQue_ding() {//»ñÈ¡±£´æ°´Å¥ if(que_ding==null) { que_ding=new JButtonModel(buttonTitle.getSave()); que_ding.addActionListener(new ActionListener() {//Ìí¼Óʼþ¼àÌý public void actionPerformed(ActionEvent e) { //±êÇ©Ãû³ÆÊÇ¿Õʱºòµ¯³ö if (iconNametext.getText().equals("") ) { ShowMessage.zidingyi("±êÇ©Ãû³Æ²»ÄÜΪ¿Õ"); return; } String iconName=iconNametext.getText().trim(); //ͼ±êÐòºÅidĬÈÏ×ÔÔö(default)ΪÕûÐÍ Dell_Tbicon.add_tbicon(iconName, path); updateTable();//µ÷ÓÃˢбí¸ñ·½ } }); } return que_ding; } /**»ñȡȡÏû°´Å¥µÄ·½·¨*/ public JButtonModel getQu_xiao() { if(qu_xiao==null){ qu_xiao=new JButtonModel("È¡Ïû"); qu_xiao.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { closeTagDialog(); } }); } return qu_xiao; } /**¹Ø±Õ¶Ô»°¿ò·½·¨*/ public void closeTagDialog() { this.dispose(); } /**ÉÏ´«Í¼Æ¬°´Å¥*/ public JButtonModel get_shang_chuang() {//»ñÈ¡ÉÏ´«°´Å¥ if(shang_chuang==null) { shang_chuang=new JButtonModel("ÉÏ´«Í¼±ê"); shang_chuang.addActionListener(new ActionListener() { JFileChooser fileChooser=new JFileChooser(GetDeskPath.path());//ÎļþÑ¡ÔñÆ÷ public void actionPerformed(ActionEvent e) { FileNameExtensionFilter filter=new FileNameExtensionFilter("ͼƬ", "JPG","PNG","JPEG");//Îļþ¹ýÂËÆ÷ fileChooser.setFileFilter(filter);//Ìí¼ÓÎļþ¹ýÂËÆ÷ int i=fileChooser.showOpenDialog(getSouthJpan());//ÏÔʾѡÔñÎļþ¶Ô»°¿ò if(i==JFileChooser.APPROVE_OPTION) {//Èç¹ûÓû§Ñ¡ÔñµÄÊÇ¡°´ò¿ª¡±°´Å¥ File file=fileChooser.getSelectedFile();//»ñȡѡÖеÄÎļþ String fileName=file.getName();//ÎļþÃû³Æ setIconFile(fileName); //µØÍ¼Í¼Æ¬µ¼Èë path="image/targeticon/"+fileName;//ͼƬ±£´æÂ·¾¶ FileIn imageImport=new FileIn(); imageImport.SaveFileIn(file,path); ShowMessage.zidingyi( "ͼƬÒѾ­´æÈë"+path); iconNametext.setText(fileName); } else { return; } } }); } return shang_chuang; } } public JButtonModel get_shua_xin() { if(shua_xin==null) { shua_xin=new JButtonModel("Ë¢ ÐÂ"); shua_xin.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { updateTable(); } }); } return shua_xin; } }