收藏 分销(赏)

java车辆管理系统设计方案及对策.doc

上传人:二*** 文档编号:4576899 上传时间:2024-09-30 格式:DOC 页数:23 大小:125KB 下载积分:5 金币
下载 相关 举报
java车辆管理系统设计方案及对策.doc_第1页
第1页 / 共23页
本文档共23页,全文阅读请下载到手机保存,查看更方便
资源描述
. . //车辆管理系统 package javaapplication27; import javax.swing.*; import java.io.*; import java.awt.*; import java.awt.event.*; import java.util.*; import javax.swing.filechooser.*; import java.io.FileInputStream; //3.4CarPicture 类 class CarPicture extends JPanel { File imageFile; Toolkit tool; public CarPicture() { tool=getToolkit(); } publicvoid setImage(File imageFile) { this.imageFile=imageFile; repaint(); } Override publicvoid paintponent(Graphics g) { super.paintponent(g); int w=getBounds().width; int h=getBounds().height; if(imageFile!=null) { Image image=tool.getImage(imageFile.getAbsolutePath()); g.drawImage(image, 0,0,w,h, this); } } } //3.3Car类 class Car implementsSerializable { String number,name,discipling,grade,borth,sex; File imagePic; publicvoid setNumber(String number) { this.number=number; } publicString getNumber() { return number; } publicvoid setName(String name) { this.name=name; } publicString getName() { return name; } publicvoid setDiscipling(String discipling) { this.discipling=discipling; } publicString getDiscipling() {return discipling; } publicvoid setGrade(String grade) { this.grade=grade; } publicString getGrade() { return grade; } publicvoid setBorth(String borth) { this.borth=borth; } publicString getBorth() { return borth; } publicvoid setSex(String sex) { this.sex=sex; } publicString getSex() { return sex; } publicvoid setImagePic(File image) { imagePic=image; } publicFile getImagePic() { return imagePic; } } //3.5InputCar类 class InputCar extends JPanel implementsActionListener { Car 车主=null; CarPicture pic; HashMap<String,Car>根本信息表=null; JTextField 车牌号,XX,购车公司,购车时间; utton 选择照片; oBox 档次; JRadioButton 男,女; ButtonGroup group=null; utton 录入,重置; FileInputStream inOne=null; ObjectInputStream inTwo=null; FileInputStream outOne=null; ObjectOutputStream outTwo=null; File systemFile,imagePic; public InputCar(File file) { systemFile=file; pic=new CarPicture(); 车牌号=new JTextField(5); XX=new JTextField(5); 档次=new oBox(); try{ FileReader inOne = newFileReader("专业.txt"); BufferedReader inTwo = newBufferedReader(inOne); String s = null; int i=0; while((s=inTwo.readLine())!=null) 档次.addItem(s); inOne.close(); inTwo.close(); } catch(IOException exp){ 档次.addItem("高级"); 档次.addItem("中高级"); 档次.addItem("中级"); 档次.addItem("中低级"); 档次.addItem("普通"); } 购车公司=new JTextField(5); 购车时间=new JTextField(5); 选择照片=new utton("选择"); group=new ButtonGroup(); 男=new JRadioButton("男",true); 女=new JRadioButton("女",true); group.add(男); group.add(女); 录入=new utton("录入"); 重置=new utton("重置"); 录入.addActionListener(this); 选择照片.addActionListener(this); 重置.addActionListener(this); Box box1=Box.createHorizontalBox(); box1.add(new JLabel("车牌号:",JLabel.CENTER)); box1.add(车牌号); Box box2=Box.createHorizontalBox(); box2.add(new JLabel("车主XX:",JLabel.CENTER)); box2.add(XX); Box box3=Box.createHorizontalBox(); box3.add(new JLabel("车主性别:",JLabel.CENTER)); box3.add(男); box3.add(女); Box box4=Box.createHorizontalBox(); box4.add(new JLabel("车辆档次:",JLabel.CENTER)); box4.add(档次); Box box5=Box.createHorizontalBox(); box5.add(new JLabel("购车公司:",JLabel.CENTER)); box5.add(购车公司); Box box6=Box.createHorizontalBox(); box6.add(new JLabel("购车时间:",JLabel.CENTER)); box6.add(购车时间); Box boxH=Box.createVerticalBox(); boxH.add(box1); boxH.add(box2); boxH.add(box3); boxH.add(box4); boxH.add(box5); boxH.add(box6); boxH.add(Box.createVerticalGlue()); JPanel picPanel=new JPanel(); picPanel.setBackground(Color.green); picPanel.add(new JLabel("选择照片:",JLabel.CENTER)); picPanel.add(选择照片); JPanel putButton=new JPanel(); putButton.add(录入); putButton.add(重置); JPanel messPanel=new JPanel(); messPanel.add(boxH); messPanel.setBackground(Color.cyan); putButton.setBackground(Color.red); setLayout(newBorderLayout()); JSplitPane splitV=new JSplitPane(JSplitPane.VERTICAL_SPLIT,picPanel,pic); JSplitPane splitH=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,messPanel,splitV); add(splitH,BorderLayout.CENTER); add(putButton,BorderLayout.SOUTH); validate(); } publicvoid actionPerformed(ActionEvent e){ if(e.getSource()==录入){ String number=""; number=车牌号.getText(); if(number.length()>0){ try { inOne =newFileInputStream(systemFile); inTwo =newObjectInputStream(inOne); 根本信息表=(HashMap<String,Car>)inTwo.readObject(); inOne.close(); inTwo.close(); } catch(Exception ee){} if(根本信息表.containsKey(number)){ String warning="该生根本信息已存在,请到修改页面修改!"; JOptionPane.showMessageDialog(this,warning, "警告",JOptionPane.WARNING_MESSAGE); } else{ String m="根本信息将被录入!"; int ok=JOptionPane.showConfirmDialog(this,m, "确认",JOptionPane.YES_NO_OPTION,JOptionPane.INFORMATION_MESSAGE); if(ok==JOptionPane.YES_OPTION){ String name=XX.getText(); String discipling=(String)档次.getSelectedItem(); String grade=购车公司.getText(); String borth=购车时间.getText(); String sex=null; if(男.isSelected()) sex=男.getText(); else sex=女.getText(); 车主=new Car(); 车主.setNumber(number); 车主.setName(name); 车主.setDiscipling(discipling); 车主.setGrade(grade); 车主.setBorth(borth); 车主.setSex(sex); 车主.setImagePic(imagePic); try{ FileOutputStream outOne=newFileOutputStream(systemFile); outTwo=newObjectOutputStream(outOne); 根本信息表.put(number,车主); outTwo.writeObject(根本信息表); outTwo.close(); outOne.close(); clearMess(); } catch(Exception ee){} } } } else{ String warning="必须要输入学号!"; JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE); } } elseif(e.getSource()==选择照片){ JFileChooser chooser=new JFileChooser(); FileNameExtensionFilter filter=new FileNameExtensionFilter("JPG&GIF Images","jpg","gif"); chooser.setFileFilter(filter); int state=chooser.showOpenDialog(null); File choiceFile=chooser.getSelectedFile(); if(choiceFile!=null&&state==JFileChooser.APPROVE_OPTION){ 选择照片.setText(choiceFile.getName()); imagePic=choiceFile; pic.setImage(imagePic); pic.repaint(); } } elseif(e.getSource()==重置){ clearMess(); } } publicvoid clearMess(){ 车牌号.setText(null); XX.setText(null); 购车公司.setText(null); 购车时间.setText(null); 选择照片.setText("选择"); imagePic=null; pic.setImage(imagePic); pic.repaint(); } } //3.6inquset类 class Inquest extends JDialog implementsActionListener{ CarPicture pic; PrintJob print; Graphics g=null; HashMap<String,Car>根本信息表; JTextField 车牌号,XX,档次,购车公司,购车时间; JRadioButton 男,女; utton 查询,打印文本及照片,打印文本,打印照片; ButtonGroup group=null; FileInputStream inOne=null; ObjectInputStream inTwo=null; File systemFile=null; JPanel messPanel; Car stu; public Inquest(File file){ setTitle("查询对话框"); setModal(false); systemFile=file; pic =new CarPicture(); 车牌号=new JTextField(6); 查询=new utton("查询"); 车牌号.addActionListener(this); 查询.addActionListener(this); 打印文本及照片=new utton("打印文本及照片"); 打印文本=new utton("打印文本"); 打印照片=new utton("打印照片"); 打印文本及照片.addActionListener(this); 打印文本.addActionListener(this); 打印照片.addActionListener(this); 打印文本及照片.setEnabled(false); 打印文本.setEnabled(false); 打印照片.setEnabled(false); XX=new JTextField(5); XX.setEditable(false); 档次=new JTextField(5); 档次.setEditable(false); 购车公司=new JTextField(5); 购车公司.setEditable(false); 购车时间=new JTextField(5); 购车时间.setEditable(false); 男=new JRadioButton("男",false); 女=new JRadioButton("女",false); group=new ButtonGroup(); group.add(男); group.add(女); Box box1=Box.createHorizontalBox(); box1.add(new JLabel("车牌号:",JLabel.CENTER)); box1.add(车牌号); box1.add(查询); Box box2=Box.createHorizontalBox(); box2.add(new JLabel("车主XX:",JLabel.CENTER)); box2.add(XX); Box box3=Box.createHorizontalBox(); box3.add(new JLabel("性别:",JLabel.CENTER)); box3.add(男); box3.add(女); Box box4=Box.createHorizontalBox(); box4.add(new JLabel("档次:",JLabel.CENTER)); box4.add(档次); Box box5=Box.createHorizontalBox(); box5.add(new JLabel("购车公司:",JLabel.CENTER)); box5.add(购车公司); Box box6=Box.createHorizontalBox(); box6.add(new JLabel("购车时间:",JLabel.CENTER)); box6.add(购车时间); Box boxH=Box.createVerticalBox(); boxH.add(box1); boxH.add(box2); boxH.add(box3); boxH.add(box4); boxH.add(box5); boxH.add(box6); messPanel=new JPanel(); messPanel.add(boxH); JSplitPane splitH=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,messPanel,pic); add(splitH,BorderLayout.CENTER); JPanel pSouth=new JPanel(); pSouth.add(打印文本及照片); pSouth.add(打印文本); pSouth.add(打印照片); add(pSouth,BorderLayout.SOUTH); validate(); setVisible(false); setSize(360,230); addWindowListener(newWindowAdapter(){ Override publicvoid windowClosing(WindowEvent e){ setVisible(false); }}); } publicvoid actionPerformed(ActionEvent e){ if(e.getSource()==查询||e.getSource()==车牌号){ String number=""; number=车牌号.getText(); if(number.length()>0){ try{ inOne=newFileInputStream(systemFile); inTwo=newObjectInputStream(inOne); 根本信息表=(HashMap<String,Car>)inTwo.readObject(); inOne.close(); inTwo.close(); } catch(Exception ee){} if(根本信息表.containsKey(number)){ stu=根本信息表.get(number); XX.setText(stu.getName()); 档次.setText(stu.getDiscipling()); 购车公司.setText(stu.getGrade()); 购车时间.setText(stu.getBorth()); if(stu.getSex().equals("男")) 男.setSelected(true); else 女.setSelected(true); pic.setImage(stu.getImagePic()); pic.repaint(); 打印文本及照片.setEnabled(true); 打印文本.setEnabled(true); 打印照片.setEnabled(true); } else{ 打印文本及照片.setEnabled(false); 打印文本.setEnabled(false); 打印照片.setEnabled(false); String warning="该车牌号不存在!"; JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE); clearMess(); } } else{ 打印文本及照片.setEnabled(false); 打印文本.setEnabled(false); 打印照片.setEnabled(false); String warning="必须要输入车牌号!"; JOptionPane.showMessageDialog(this,warning,"警告", JOptionPane.WARNING_MESSAGE); } } elseif(e.getSource()==打印文本及照片){ try{ print=getToolkit().getPrintJob(new JFrame(),"打印",newProperties()); g=print.getGraphics(); g.translate(120,200); int w=messPanel.getBounds().width; messPanel.printAll(g); g.translate(w,0); pic.printAll(g); XX.setText(stu.getName()); g.dispose(); print.end(); } catch(Exception exp){} } elseif(e.getSource()==打印文本){ try{ print=getToolkit().getPrintJob(new JFrame(),"打印",newProperties()); g=print.getGraphics(); g.translate(120,200); messPanel.printAll(g); g.dispose(); print.end(); } catch(Exception exp){} } elseif(e.getSource()==打印照片){ try{ print=getToolkit().getPrintJob(new JFrame(),"打印",newProperties()); g=print.getGraphics(); int w=messPanel.getBounds().width; g.translate(120+w,200); pic.printAll(g); g.dispose(); print.end(); } catch(Exception exp){} } } publicvoid clearMess(){ 车牌号.setText(null); XX.setText(null); 购车公司.setText(null); 购车时间.setText(null); 档次.setText(null); pic.setImage(null); pic.repaint(); } } //3.8Delete类 class Delete extends JPanel implementsActionListener{ HashMap<String,Car>根本信息表=null; JTextField 车牌号,XX,档次,购车公司,购车时间; JRadioButton 男,女; utton 删除; ButtonGroup group=null; FileInputStream inOne=null; ObjectInputStream inTwo=null; FileOutputStream outOne=null; ObjectOutputStream outTwo=null; File systemFile=null; public Delete(File file){ systemFile=file; 车牌号=new JTextField(10); 删除=new utton("删除"); 车牌号.addActionListener(this); 删除.addActionListener(this); XX=new JTextField(10); XX.setEditable(false); 档次=new JTextField(10); 档次.setEditable(false); 购车公司=new JTextField(10); 购车公司.setEditable(false); 购车时间=new JTextField(10); 购车时间.setEditable(false); 男=newJRadioButton("男",false); 女=new JRadioButton("女",false); group=new ButtonGroup(); group.add(男); group.add(女); Box box1=Box.createHorizontalBox(); box1.add(new JLabel("输入要删除的车牌号:",JLabel.CENTER)); box1.add(车牌号); box1.add(删除); Box box2=Box.createHorizontalBox(); box2.add(new JLabel("车主XX:",JLabel.CENTER)); box2.add(XX); Box box3=Box.createHorizontalBox(); box3.add(new JLabel("性别:",JLabel.CENTER)); box3.add(男); box3.add(女); Box box4=Box.createHorizontalBox(); box4.add(new JLabel("档次:",JLabel.CENTER)); box4.add(档次); Box box5=Box.createHorizontalBox(); box5.add(new JLabel("购车公司:",JLabel.CENTER)); box5.add(购车公司); Box box6=Box.createHorizontalBox(); box6.add(new JLabel("购车时间:",JLabel.CENTER)); box6.add(购车时间); Box boxH=Box.createVerticalBox(); boxH.add(box1); boxH.add(box2); boxH.add(box3); boxH.add(box4); boxH.add(box5); boxH.add(box6); boxH.add(Box.createVerticalGlue()); JPanel pCenter=new JPanel(); pCenter.add(boxH); setLayout(
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 通信科技 > 开发语言

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服