📄 jmaint.java
字号:
}//GEN-LAST:event_formWindowOpened private void GasEditActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_GasEditActionPerformed ActivateGasEditor(1); }//GEN-LAST:event_GasEditActionPerformed private void GasNewActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_GasNewActionPerformed ActivateGasEditor(0); }//GEN-LAST:event_GasNewActionPerformed private void ComboVehicleActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_ComboVehicleActionPerformed ChangeVeh(); }//GEN-LAST:event_ComboVehicleActionPerformed private void GasTableMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_GasTableMouseReleased GasViewer(); }//GEN-LAST:event_GasTableMouseReleased private void GasTableKeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_GasTableKeyReleased GasViewer(); }//GEN-LAST:event_GasTableKeyReleased private void exitForm(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_exitForm System.exit(0); }//GEN-LAST:event_exitForm public static void main(String args[]) { new jMaint().show(); } public class FilterJMaint extends javax.swing.filechooser.FileFilter { public boolean accept(java.io.File file) { if (file == null) return false; return file.isDirectory() || file.getName().toLowerCase().endsWith(".vmt"); } public String getDescription() { return "Vehicle Maintenance Tracker (*.vmt)"; } } public class HighlightTableCellRenderer extends DefaultTableCellRenderer { public Component getTableCellRendererComponent(JTable table,Object value,boolean isSelected,boolean hasFocus,int row,int column) { this.setForeground(Color.black); this.setVisible(true); this.setFocusable(true); this.setBackground(Color.white); if (row == table.getSelectedRow()) this.setBackground(Color.yellow); this.setText(value !=null ? value.toString() : ""); this.setHorizontalAlignment(CENTER); this.setVerticalAlignment(CENTER); this.setFont(new java.awt.Font("Dialog", 0, 12)); return this; } } public class ColoredTextTableCellRenderer extends DefaultTableCellRenderer { public Component getTableCellRendererComponent(JTable table,Object value,boolean isSelected,boolean hasFocus,int row,int column) { this.setVisible(true); this.setFocusable(true); this.setForeground(Color.black); this.setBackground(Color.white); if ((column>0) && (value.toString().length()>0)) { if (((Integer.parseInt(value.toString())<100) && (column==1)) || ((Integer.parseInt(value.toString())<20) && (column==2))) { this.setBackground(Color.blue); this.setForeground(Color.white); } if (Integer.parseInt(value.toString())<0) { this.setBackground(Color.red); this.setForeground(Color.white); } } this.setText(value !=null ? value.toString() : ""); this.setHorizontalAlignment(CENTER); this.setVerticalAlignment(CENTER); this.setFont(new java.awt.Font("Dialog", 0, 12)); return this; } } public void ChangeVeh() { CurVeh = VehInfo.getID(VehInfo.indexOf(ComboVehicle.getSelectedItem().toString())); TableGasModel(); TableMaintModel(); TableMonModel(); Tabs.setSelectedIndex(0); } public void OpenFile(String MainFile) { String line = null; String[] s = null; String TempFile = System.getProperty("user.home") + System.getProperty("file.separator") + "jMaint.tmp"; try { ZipInputStream zip = new ZipInputStream(new FileInputStream(MainFile)); ZipEntry entry; byte[] buf = new byte[1024]; int len; while ((entry = zip.getNextEntry()) != null) { OutputStream out = new FileOutputStream(TempFile); while ((len = zip.read(buf)) > 0) out.write(buf, 0, len); BufferedReader in = new BufferedReader(new FileReader(TempFile)); if (entry.toString().equals("version")) { line = in.readLine(); if (!line.toString().trim().equalsIgnoreCase("1.00")) return; } else if (entry.toString().equals("vendors")) { VenInfo = new VenData(); while ((line = in.readLine()) != null) { s = line.split(String.valueOf('\t')); VenInfo.addRecord(s[0], s[1], s[2], s[3], s[4], s[5], s[6], s[7], s[8], s[9], s[10], s[11], Integer.valueOf(s[12]).intValue()); } } else if (entry.toString().equals("vehicles")) { VehInfo = new VehData(); while ((line = in.readLine()) != null) { s = line.split(String.valueOf('\t')); VehInfo.addRecord(Integer.valueOf(s[0]).intValue(), s[1], Integer.valueOf(s[2]).intValue(), s[3], s[4], s[5], s[6], s[7], Integer.valueOf(s[8]).intValue(), Integer.valueOf(s[9]).intValue(), Float.parseFloat(s[10]), s[11], s[12], s[13]); } } else if (entry.toString().equals("gas")) { GasInfo = new GasData(); while ((line = in.readLine()) != null) { s = line.split(String.valueOf('\t')); GasInfo.addRecord(s[0], Integer.valueOf(s[1]).intValue(), Integer.valueOf(s[2]).intValue(), Float.parseFloat(s[3]), Float.parseFloat(s[4]), Integer.valueOf(s[5]).intValue(), Integer.valueOf(s[6]).intValue(), s[7], s[8], s[9]); } } else if (entry.toString().equals("services")) { ServListInfo = new ServListData(); while ((line = in.readLine()) != null) { s = line.split(String.valueOf('\t')); ServListInfo.addRecord(Integer.parseInt(s[0]), s[1], s[2]); } } else if (entry.toString().equals("maintenance")) { MaintInfo = new MaintData(); while ((line = in.readLine()) != null) { s = line.split(String.valueOf('\t')); MaintInfo.addRecord(Integer.valueOf(s[0]).intValue(), s[1], s[2], Integer.valueOf(s[3]).intValue(), s[4], Float.parseFloat(s[5]), s[6], s[7], Integer.valueOf(s[8]).intValue()); } } else if (entry.toString().equals("schedule")) { SchInfo = new SchData(); while ((line = in.readLine()) != null) { s = line.split(String.valueOf('\t')); SchInfo.addRecord(Integer.valueOf(s[0]).intValue(), Integer.valueOf(s[1]).intValue(), s[2], s[3], Integer.valueOf(s[4]).intValue()); } } out.close(); in.close(); } zip.close(); File tFile = new File(TempFile); tFile.delete(); FileStatus = 0; } catch (IOException e) { System.out.println("Error: Open File"); } OpenedFile = MainFile; TableGasModel(); TableMaintModel(); TableMonModel(); MainVehicleSelect(); SetupListChange(); ComboVehicle.setEnabled(true); ToolbarSave.setEnabled(true); ToolbarSaveAs.setEnabled(true); Tabs.setEnabledAt(0, true); Tabs.setEnabledAt(1, true); Tabs.setEnabledAt(2, true); Tabs.setEnabledAt(3, true); FileStatus = 0; Tabs.setSelectedIndex(0); } public void SaveFile(String MainFile) { this.setEnabled(false); String t = String.valueOf('\t'); String nl = String.valueOf('\n'); String TempFile = System.getProperty("user.home") + System.getProperty("file.separator") + "jMaint.tmp"; byte[] buf = new byte[1024]; int len; try { ZipOutputStream zip = new ZipOutputStream(new FileOutputStream(MainFile)); BufferedWriter temp; String entryName = null; for (int i=0; i<7; i++) { temp = new BufferedWriter(new FileWriter(TempFile)); switch (i) { case 0: entryName = "version"; temp.write("1.00"+nl); break; case 1: entryName = "vendors"; for (int j=0; j<VenInfo.size(); j++) temp.write(VenInfo.exportRecord(j)); break; case 2: entryName = "vehicles"; for (int j=0; j<VehInfo.size(); j++) temp.write(VehInfo.exportRecord(j)); break; case 3: entryName = "gas"; for (int j=0; j<GasInfo.size(); j++) temp.write(GasInfo.exportRecord(j)); break; case 4: entryName = "services"; for (int j=0; j<ServListInfo.size(); j++) temp.write(ServListInfo.exportRecord(j)); break; case 5: entryName = "maintenance"; for (int j=0; j<MaintInfo.size(); j++) temp.write(MaintInfo.exportRecord(j)); break; case 6: entryName = "schedule"; for (int j=0; j<SchInfo.size(); j++) temp.write(SchInfo.exportRecord(j)); break; } temp.close(); zip.putNextEntry(new ZipEntry(entryName)); FileInputStream in = new FileInputStream(TempFile); while ((len = in.read(buf)) > 0) zip.write(buf, 0, len); zip.closeEntry(); in.close(); new File(TempFile).delete(); } zip.close(); } catch (IOException e) { System.out.println("Error: Save File"); } this.setEnabled(true); FileStatus = 0; } public String SaveFileAs() { String s = null; JFileChooser FileChooserSaveAs = new JFileChooser(); FileChooserSaveAs.addChoosableFileFilter(new FilterJMaint()); int option = FileChooserSaveAs.showSaveDialog(this); if (option == javax.swing.JFileChooser.APPROVE_OPTION) { File oFile = FileChooserSaveAs.getSelectedFile(); int u_choice = -1; if (oFile.exists()) u_choice = JOptionPane.showConfirmDialog(null, "Your choice already exists. Do you wish to overwrite?", "Overwrite?", JOptionPane.YES_NO_OPTION); if (!((oFile == null) || (u_choice == JOptionPane.NO_OPTION))) { s = oFile.getAbsoluteFile().toString(); SaveFile(s); } } return s; } public String DateToString() { int m = CurCal.get(CurCal.MONTH)+1; int d = CurCal.get(CurCal.DATE); String m1 = null; String d1 = null; if (m<10) m1 = "0"+Integer.toString(m); else m1=Integer.toString(m); if (d<10) d1 = "0"+Integer.toString(d); else d1=Integer.toString(d);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -