温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

基于java实现停车场管理系统的示例

发布时间:2021-04-15 10:17:28 来源:亿速云 阅读:183 作者:小新 栏目:编程语言

这篇文章主要介绍基于java实现停车场管理系统的示例,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

具体内容如下

WorkFram.java

package com.parking;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;

/*
 * WotkFram.java
 *
 * Created on 2008年9月2日, 下午7:57
 */

/**
 *
 * @author cheng
 */
public class WorkFram extends JFrame {
 
 /**
 * 
 */
 private static final long serialVersionUID = 1L;

 /**
 * @param args the command line arguments
 */
 // 变量声明 - 不进行修改//GEN-BEGIN:variables
 
 private JButton jbtnEnter;
 
 private JButton jbtnRefrush;
 
 private JTextArea jtexInfor;
 
 public int m_areaCount; //停车区个数
 
 public int[] m_nos; //每个停车区的车位数
 
 public int[] m_apare; //每个停车区的空闲车位数
 
 // 变量声明结束//GEN-END:variables
 //int m_areaCount;
 
 /** Creates new form WotkFram */
 
 public WorkFram(InitFrame frm) {
 
 this.m_areaCount = frm.m_Area.length;
 this.m_apare = new int[m_areaCount];
 this.m_nos = new int[m_areaCount];
 for(int i = 0; i < m_areaCount; i++){
  this.m_apare[i] = frm.m_Area[i];
  this.m_nos[i] = frm.m_Area[i];
 }
 
 initComponents();
 }
 
 /** This method is called from within the constructor to
 * initialize the form.
 * WARNING: Do NOT modify this code. The content of this method is
 * always regenerated by the Form Editor.
 */
 // <editor-fold defaultstate="collapsed" desc=" 生成的代码 ">//GEN-BEGIN:initComponents
 private void initComponents() {
 
 jbtnEnter = new JButton();
 
 jbtnRefrush = new JButton();
 
 jtexInfor = new JTextArea("停车场初始化结果:\n" + getStopStatus());
 
 jtexInfor.setEnabled(false);
 
 setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
 
 setTitle("\u505c\u8f66\u573a\u6a21\u62df");
 
 jbtnEnter.setText("\u8fdb\u5165\u505c\u8f66\u573a");
 
 jbtnRefrush.setText("刷新");
 
 jbtnEnter.addActionListener(new ActionListener() {
  public void actionPerformed(ActionEvent evt) {
  jbtnEnterActionPerformed(evt);
  }
 });
 
 jbtnRefrush.addActionListener(new ActionListener() {
  public void actionPerformed(ActionEvent evt) {
  jbtnRefrushActionPerformed(evt);
  }
 });

 GroupLayout layout = new GroupLayout(getContentPane());
 
 getContentPane().setLayout(layout);
 
 layout.setHorizontalGroup(
  layout.createParallelGroup(GroupLayout.Alignment.LEADING)
  .addGroup(GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
  .addContainerGap(159, Short.MAX_VALUE)
  .addComponent(jtexInfor)
  .addComponent(jbtnRefrush)
  .addComponent(jbtnEnter)  
  .addGap(128, 128, 128))
 );
 
 layout.setVerticalGroup(
  layout.createParallelGroup(GroupLayout.Alignment.LEADING)
  .addGroup(GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
  .addContainerGap(204, Short.MAX_VALUE)
  .addComponent(jtexInfor)
  .addComponent(jbtnRefrush)
  .addComponent(jbtnEnter)
  .addGap(73, 73, 73))
 );
 
 pack();
 
 }// </editor-fold>//GEN-END:initComponents

 private void jbtnEnterActionPerformed(ActionEvent evt) {//GEN-FIRST:event_jbtnEnterActionPerformed
// TODO 将在此处添加您的处理代码:
 Thread thr = new carThread(this);
 thr.run();
 }//GEN-LAST:event_jbtnEnterActionPerformed
 
 private void jbtnRefrushActionPerformed(ActionEvent evt) {//GEN-FIRST:event_jbtnEnterActionPerformed
// TODO 将在此处添加您的处理代码:
 this.jtexInfor.setText("停车场当前车区车位状况统计:\n" + getStopStatus()); 
 }//GEN-LAST:event_jbtnEnterActionPerformed
 
 public String getStopStatus() {
 String str = "";
 for (int i = 0; i < m_areaCount; i++) {
 if (m_apare[i] > 0) {
 str += " " + (i + 1) + " 区总车位:" + m_nos[i] + "\t当前空闲车位 " + m_apare[i] + " 个\n";
 } else {
 str += " " + (i + 1) + " 区总车位:" + m_nos[i] + "\t当前区无空闲车位\n";
 } 
 }
 return str;
 }
 
 public void setInfor(String infor) {
 this.jtexInfor.setText(infor);
 }
 
}

InitFrame.java

package com.parking;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.*;
/*
 * InitFrame.java
 *
 * Created on 2008年9月2日, 下午7:36
 */

/**
 *
 * @author cheng
 */
public class InitFrame extends JFrame {
 
 // 变量声明 - 不进行修改
 //GEN-BEGIN:variables
 
 /**
 * 
 */
 private static final long serialVersionUID = 1L;

 private JButton jButton1;
 
 private JLabel jLabel1;
 
 private JLabel jLabel2;
 
 private JLabel jLabel3;
 
 private JSpinner jSpinnerStopArea;
 
 private JButton jbtnCancel;
 
 private JButton jbtnOK;
 
 public JButton jbtnStopCount;
 
 private JTextField jtxtCarCount;
 
 private JTextField jtxtStopCount;
 
 public int m_Area[];
 
 SpinnerNumberModel mdl;
 
 // 变量声明结束//GEN-END:variables
 /** Creates new form InitFrame */
 public InitFrame() {
 initComponents();
 mdl = new SpinnerNumberModel();
 this.jSpinnerStopArea.setModel(mdl);
 }
 
 /** This method is called from within the constructor to
 * initialize the form.
 * WARNING: Do NOT modify this code. The content of this method is
 * always regenerated by the Form Editor.
 */
 // <editor-fold defaultstate="collapsed" desc=" 生成的代码 ">//GEN-BEGIN:initComponents
 private void initComponents() { 
 
 jLabel1 = new JLabel();
 jtxtStopCount = new JTextField();
 jbtnStopCount = new JButton();
 jLabel2 = new JLabel();
 jSpinnerStopArea = new JSpinner();
 jLabel3 = new JLabel();
 jtxtCarCount = new JTextField();
 jButton1 = new JButton();
 jbtnOK = new JButton();
 jbtnCancel = new JButton();

 setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
 
 setTitle("\u505c\u8f66\u573a\u521d\u59cb\u5316");
 
 addWindowListener(new WindowAdapter() {
  public void windowClosing(WindowEvent evt) {
  formWindowClosing(evt);
  }
 });

 jLabel1.setText("\u505c\u8f66\u533a\u57df\u4e2a\u6570\uff1a");

 jbtnStopCount.setText("\u8f93\u5165\u505c\u533a\u4e2a\u6570");
 
 jbtnStopCount.addActionListener(new ActionListener() {
  public void actionPerformed(ActionEvent evt) {
  jbtnStopCountActionPerformed(evt);
  }
 });

 jLabel2.setText("\u505c\u8f66\u533a\u53f7\uff1a");

 jSpinnerStopArea.setEnabled(false);

 jLabel3.setText("\u505c\u8f66\u4f4d\u4e2a\u6570\uff1a");

 jtxtCarCount.setEnabled(false);

 jButton1.setText("\u8f93\u5165\u505c\u533a\u8f66\u4f4d\u4e2a\u6570");
 
 jButton1.addActionListener(new ActionListener() {
  public void actionPerformed(ActionEvent evt) {
  jButton1ActionPerformed(evt);
  }
 });

 jbtnOK.setText("\u786e\u5b9a");
 
 jbtnOK.setEnabled(false);
 
 jbtnOK.addActionListener(new ActionListener() {
  public void actionPerformed(ActionEvent evt) {
  jbtnOKActionPerformed(evt);
  }
 });

 jbtnCancel.setText("\u53d6\u6d88");
 
 jbtnCancel.addActionListener(new ActionListener() {
  public void actionPerformed(ActionEvent evt) {
  jbtnCancelActionPerformed(evt);
  }
 });

 GroupLayout layout = new GroupLayout(getContentPane());
 
 getContentPane().setLayout(layout);
 
 layout.setHorizontalGroup(
  layout.createParallelGroup(GroupLayout.Alignment.LEADING)
  .addGroup(layout.createSequentialGroup()
  .addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING)
   .addGroup(layout.createSequentialGroup()
   .addContainerGap()
   .addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING)
    .addGroup(layout.createSequentialGroup()
    .addComponent(jLabel2)
    .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
    .addComponent(jSpinnerStopArea, GroupLayout.PREFERRED_SIZE, 37, GroupLayout.PREFERRED_SIZE)
    .addGap(14, 14, 14)
    .addComponent(jLabel3, GroupLayout.PREFERRED_SIZE, 81, GroupLayout.PREFERRED_SIZE)
    .addGap(13, 13, 13)
    .addComponent(jtxtCarCount, GroupLayout.PREFERRED_SIZE, 117, GroupLayout.PREFERRED_SIZE))
    .addGroup(layout.createSequentialGroup()
    .addComponent(jLabel1)
    .addGap(24, 24, 24)
    .addComponent(jtxtStopCount, GroupLayout.PREFERRED_SIZE, 99, GroupLayout.PREFERRED_SIZE)
    .addGap(25, 25, 25)
    .addComponent(jbtnStopCount))))
   .addGroup(layout.createSequentialGroup()
   .addGap(29, 29, 29)
   .addComponent(jButton1, GroupLayout.DEFAULT_SIZE, 137, Short.MAX_VALUE)
   .addGap(22, 22, 22)
   .addComponent(jbtnOK, GroupLayout.DEFAULT_SIZE, 65, Short.MAX_VALUE)
   .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
   .addComponent(jbtnCancel, GroupLayout.PREFERRED_SIZE, 66, GroupLayout.PREFERRED_SIZE)
   .addGap(23, 23, 23)))
  .addGap(51, 51, 51))
 );
 
 layout.setVerticalGroup( 
  layout.createParallelGroup(GroupLayout.Alignment.LEADING)
  .addGroup(layout.createSequentialGroup()
  .addGap(30, 30, 30)
  .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE)
   .addComponent(jLabel1)
   .addComponent(jtxtStopCount, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
   .addComponent(jbtnStopCount))
  .addGap(27, 27, 27)
  .addGroup(layout.createParallelGroup(GroupLayout.Alignment.TRAILING)
   .addComponent(jLabel2)
   .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE)
   .addComponent(jSpinnerStopArea, GroupLayout.PREFERRED_SIZE, 15, GroupLayout.PREFERRED_SIZE)
   .addComponent(jLabel3, GroupLayout.PREFERRED_SIZE, 15, GroupLayout.PREFERRED_SIZE)
   .addComponent(jtxtCarCount, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)))
  .addGap(76, 76, 76)
  .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE)
   .addComponent(jButton1)
   .addComponent(jbtnOK)
   .addComponent(jbtnCancel))
  .addContainerGap(100, Short.MAX_VALUE))
 );
 
 pack();
 
 }// </editor-fold>//GEN-END:initComponents

 private void jbtnCancelActionPerformed(ActionEvent evt) {// GEN-FIRST:event_jbtnCancelActionPerformed
 // TODO 将在此处添加您的处理代码:
 JOptionPane.showMessageDialog(null, "您没有初始化,无法执行");
 System.exit(-1);
 }// GEN-LAST:event_jbtnCancelActionPerformed

 private void jbtnOKActionPerformed(ActionEvent evt) {// GEN-FIRST:event_jbtnOKActionPerformed
 // TODO 将在此处添加您的处理代码:
 this.setVisible(false);
 this.removeNotify(); 
 WorkFram frm = new WorkFram(this);
// setValue(frm);
 frm.setVisible(true);
 }// GEN-LAST:event_jbtnOKActionPerformed

 private void formWindowClosing(WindowEvent evt) {// GEN-FIRST:event_formWindowClosing
 // TODO 将在此处添加您的处理代码:
 JOptionPane.showMessageDialog(null, "您没有初始化,无法执行");
 System.exit(-1);
 }// GEN-LAST:event_formWindowClosing

 private void jButton1ActionPerformed(ActionEvent evt) {// GEN-FIRST:event_jButton1ActionPerformed
 // TODO 将在此处添加您的处理代码:
 boolean b = true;
 int n = ((Integer) mdl.getValue()).intValue() - 1;
 this.m_Area[n] = Integer.parseInt(this.jtxtCarCount.getText());
 for (int i = 0; i < m_Area.length; i++) {
 if (m_Area[i] <= 0) {
 b = false;
 
 }
 }
 try {
 mdl.setValue(mdl.getNextValue());
 this.jtxtCarCount.setText("");
 this.jtxtCarCount.setFocusable(true);
 } catch (Exception e) {
 }
 if (b)
 this.jbtnOK.setEnabled(true);
 }// GEN-LAST:event_jButton1ActionPerformed

 private void jbtnStopCountActionPerformed(ActionEvent evt) {// GEN-FIRST:event_jbtnStopCountActionPerformed
// TODO 将在此处添加您的处理代码:
 String s = this.jtxtStopCount.getText();
 int i = Integer.parseInt(s);
 m_Area = new int[i];
 for (i = 0; i < m_Area.length; i++) {
 this.m_Area[i] = -1;// Integer.parseInt
 }
 this.jSpinnerStopArea.setEnabled(true);
 this.jtxtCarCount.setEnabled(true);
 mdl.setMinimum(new Integer(1));
 mdl.setMaximum(new Integer(m_Area.length));
 mdl.setValue(new Integer(1));
 }// GEN-LAST:event_jbtnStopCountActionPerformed
 
 /**
 * @param args the command line arguments
 */
 
 public static void main(String args[]) {
 java.awt.EventQueue.invokeLater(new Runnable() {
  public void run() {
  new InitFrame().setVisible(true);
  }
 }); 
 }
 
/* 
 public void setValue(WorkFram frm) {
 frm.m_areaCount = this.m_Area.length;
 frm.m_apare = new int[frm.m_areaCount];
 frm.m_nos = new int[frm.m_areaCount];
 for(int i = 0; i < frm.m_areaCount; i++){
  frm.m_apare[i] = this.m_Area[i];
  frm.m_nos[i] = this.m_Area[i];
 }
 }
*/
 
}

carThread.java

package com.parking;

/*
 * carThread.java
 *
 * Created on 2008年9月2日, 下午9:02
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

/**
 * 
 * @author cheng
 */
public class carThread extends Thread {

 private WorkFram frm;
 
 /** Creates a new instance of carThread */
 public carThread(WorkFram frm) {
 this.frm = frm;
 }
 
 public void run() {
 new carJFrame(frm).setVisible(true);
 }
 
}

carJFrame.java

package com.parking;

/*
 * carJFrame.java
 *
 * Created on 2008年9月2日, 下午9:01
 */

/**
 *
 * @author cheng
 */

import javax.swing.*;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

public class carJFrame extends JFrame {
 
 /**
 * 
 */
 private static final long serialVersionUID = 1L;

 /**
 * @param args the command line arguments
 */
 
 // 变量声明 - 不进行修改//GEN-BEGIN:variables
 
 private JButton jbtnEnterStop;
 
 private JButton jbtnLeftArea;
 
 private JButton jbtnLeftStop;
 
 private JButton jbtnLookUpArea;
 
 private JButton jbtnLookupPosition;
 
 private WorkFram mainFram;
 
 private int chooseArea;
 
 // 变量声明结束//GEN-END:variables
 
 /** Creates new form carJFrame */
 
 public carJFrame(WorkFram frm) {
 initComponents();
 mainFram = frm;
 }
 
 /**This method is called from within the constructor to
 * initialize the form.
 * WARNING: Do NOT modify this code. The content of this method is
 * always regenerated by the Form Editor.
 */
 // <editor-fold defaultstate="collapsed" desc=" 生成的代码 ">//GEN-BEGIN:initComponents
 private void initComponents() {
 
 jbtnEnterStop = new JButton();
 jbtnLookUpArea = new JButton();
 jbtnLookupPosition = new JButton();
 jbtnLeftArea = new JButton();
 jbtnLeftStop = new JButton();

 setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
 
 setTitle("\u505c\u8f66\u573a\u64cd\u4f5c");
 
 jbtnEnterStop.setText("\u8fdb\u5165\u505c\u8f66\u573a");
 
 jbtnEnterStop.addActionListener(new ActionListener() {
  public void actionPerformed(ActionEvent evt) {
  jbtnEnterStopActionPerformed(evt);
  }
 });

 jbtnLookUpArea.setText("\u5bfb\u627e\u505c\u8f66\u533a");
 
 jbtnLookUpArea.addActionListener(new ActionListener() {
  public void actionPerformed(ActionEvent evt) {
  jbtnLookUpAreaActionPerformed(evt);
  }
 });

 jbtnLookupPosition.setText("\u5bfb\u627e\u505c\u8f66\u4f4d");
 
 jbtnLookupPosition.addActionListener(new ActionListener() {
  public void actionPerformed(ActionEvent evt) {
  jbtnLookupPositionActionPerformed(evt);
  }
 });

 jbtnLeftArea.setText("\u79bb\u5f00\u505c\u8f66\u533a");
 
 jbtnLeftArea.addActionListener(new ActionListener() {
  public void actionPerformed(ActionEvent evt) {
  jbtnLeftAreaActionPerformed(evt);
  }
 });

 jbtnLeftStop.setText("\u79bb\u5f00\u505c\u8f66\u573a");
 
 jbtnLeftStop.addActionListener(new ActionListener() {
  public void actionPerformed(ActionEvent evt) {
  jbtnLeftStopActionPerformed(evt);
  }
 });
 
 jbtnEnterStop.setEnabled(true);
 jbtnLookUpArea.setEnabled(false);
 jbtnLookupPosition.setEnabled(false);
 jbtnLeftArea.setEnabled(false);
 jbtnLeftStop.setEnabled(false);
 
 addWindowListener(new WindowAdapter() {
  public void windowClosing(WindowEvent evt) {
  formWindowClosing(evt);
  }
 });

 GroupLayout layout = new GroupLayout(getContentPane());
 
 getContentPane().setLayout(layout);
 
 layout.setHorizontalGroup(
  layout.createParallelGroup(GroupLayout.Alignment.LEADING)
  .addGroup(layout.createSequentialGroup()
  .addGap(102, 102, 102)
  .addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING)
   .addComponent(jbtnLeftStop)
   .addComponent(jbtnLeftArea)
   .addComponent(jbtnLookupPosition)
   .addComponent(jbtnLookUpArea)
   .addComponent(jbtnEnterStop))
  .addContainerGap(205, Short.MAX_VALUE))
 );
 
 layout.setVerticalGroup(
  layout.createParallelGroup(GroupLayout.Alignment.LEADING)
  .addGroup(layout.createSequentialGroup()
  .addGap(56, 56, 56)
  .addComponent(jbtnEnterStop)
  .addGap(20, 20, 20)
  .addComponent(jbtnLookUpArea)
  .addGap(22, 22, 22)
  .addComponent(jbtnLookupPosition)
  .addGap(24, 24, 24)
  .addComponent(jbtnLeftArea)
  .addGap(19, 19, 19)
  .addComponent(jbtnLeftStop)
  .addContainerGap(44, Short.MAX_VALUE))
 );
 
 pack();
 
 }// </editor-fold>//GEN-END:initComponents

 private void jbtnLeftStopActionPerformed(ActionEvent evt) {//GEN-FIRST:event_jbtnLeftStopActionPerformed
// TODO 将在此处添加您的处理代码:
 //离开停车场,交存车卡
 
 JOptionPane.showMessageDialog(null, "停车卡收回,再见!");
/* jbtnEnterStop.setEnabled(true);
 jbtnLookUpArea.setEnabled(false);
 jbtnLookupPosition.setEnabled(false);
 jbtnLeftArea.setEnabled(false);
 jbtnLeftStop.setEnabled(false);
*/ 
 this.setVisible(false);
 this.removeNotify();
 
 }//GEN-LAST:event_jbtnLeftStopActionPerformed

 private void jbtnLeftAreaActionPerformed(ActionEvent evt) {//GEN-FIRST:event_jbtnLeftAreaActionPerformed
// TODO 将在此处添加您的处理代码:
 //离开停车区
 
 int confirm = JOptionPane.showConfirmDialog(null, "确定要离开 " + chooseArea + " 号停车区?", "离开停车区", JOptionPane.YES_NO_OPTION);
 if (confirm == JOptionPane.YES_OPTION) { 
 mainFram.m_apare[chooseArea - 1]++;
// mainFram.setInfor(mainFram.getStopStatus());
 jbtnLeftArea.setEnabled(false);
 jbtnLookUpArea.setEnabled(true);
 jbtnLeftStop.setEnabled(true);
 } else if (confirm == JOptionPane.NO_OPTION) {
 JOptionPane.showMessageDialog(null, "您已放弃了离开该车区!");
 jbtnLookUpArea.setEnabled(true);
 } 
  
 }//GEN-LAST:event_jbtnLeftAreaActionPerformed

 private void jbtnLookupPositionActionPerformed(ActionEvent evt) {//GEN-FIRST:event_jbtnLookupPositionActionPerformed
// TODO 将在此处添加您的处理代码:
 //进入停车区,寻找停车位

 int confirm = JOptionPane.showConfirmDialog(null, "您已经选择了" + chooseArea + " 号停车区, " + "确定要进入该停车区?", "进行停车区寻找车位", JOptionPane.YES_NO_OPTION);
 if (confirm == JOptionPane.YES_OPTION) { 
 mainFram.m_apare[chooseArea - 1]--;
// mainFram.setInfor(mainFram.getStopStatus());
 jbtnLookUpArea.setEnabled(false);
 jbtnLookupPosition.setEnabled(false);
 jbtnLeftArea.setEnabled(true);
 jbtnLeftStop.setEnabled(false);
 } else if (confirm == JOptionPane.NO_OPTION) {
 JOptionPane.showMessageDialog(null, "您已放弃了进入该车区!");
 jbtnLookUpArea.setEnabled(true);
 jbtnLookupPosition.setEnabled(false);
 } 
 
 }//GEN-LAST:event_jbtnLookupPositionActionPerformed

 private void jbtnLookUpAreaActionPerformed(ActionEvent evt) {//GEN-FIRST:event_jbtnLookUpAreaActionPerformed
// TODO 将在此处添加您的处理代码:
 //进入停车场,寻找停车区
 
 ImageIcon icon = new ImageIcon("test.gif");
 int[] freeArea = getFreeArea();
 Object[] freeAreas = new Object[freeArea.length];
 for (int i = 0; i < freeArea.length; i++) {
 freeAreas[i] = freeArea[i];
 }
 
 Integer choose = (Integer)JOptionPane.showInputDialog(null, "当前停车场状况: \n" + mainFram.getStopStatus() + "\n请选择一个空闲车区:", "当前可先空闲车区: ", JOptionPane.PLAIN_MESSAGE, icon, freeAreas, (Integer)freeAreas[0]);
 
 if (choose != null) { 
 JOptionPane.showMessageDialog(null, "您选择了进入" + choose.intValue() + "车区");
 chooseArea = choose.intValue();
 jbtnLookUpArea.setEnabled(false);
 jbtnLookupPosition.setEnabled(true);
 } else {
 JOptionPane.showMessageDialog(null, "您没有选择车区!");
 } 
 
 }//GEN-LAST:event_jbtnLookUpAreaActionPerformed

 private void jbtnEnterStopActionPerformed(ActionEvent evt) {//GEN-FIRST:event_jbtnEnterStopActionPerformed
// TODO 将在此处添加您的处理代码:
 //领卡,进入停车场
 
 boolean isFull = true;
 for (int i = 0; i < mainFram.m_areaCount; i++) {
 if (mainFram.m_apare[i] > 0) {
 isFull = false;
 } 
 }
 
 if (isFull) {
 JOptionPane.showMessageDialog(null, "当前车场无空闲车区,请稍后再试!");
 } else {
 jbtnEnterStop.setEnabled(false);
  jbtnLookUpArea.setEnabled(true);
  jbtnLookupPosition.setEnabled(false);
  jbtnLeftArea.setEnabled(false);
  jbtnLeftStop.setEnabled(false);
  JOptionPane.showMessageDialog(null, "成功领取停车卡,请进去车场寻找停车区位!");
 }
 
 }//GEN-LAST:event_jbtnEnterStopActionPerformed
 
 private void formWindowClosing(WindowEvent evt) {// GEN-FIRST:event_formWindowClosing
 // TODO 将在此处添加您的处理代码:
 int confirm = JOptionPane.showConfirmDialog(null, "确定退出?", "退出停车区", JOptionPane.YES_NO_OPTION);
 if (confirm == JOptionPane.YES_OPTION) {
 if (chooseArea > 0) {
 mainFram.m_apare[chooseArea - 1]--; 
 }
 this.setVisible(false);
 this.removeNotify();
 } else {
 this.setVisible(true);
 }
 }// GEN-LAST:event_formWindowClosing
 
 public int[] getFreeArea() {
 int count = 0;
 for (int i = 0; i < mainFram.m_areaCount; i++) {
 if (mainFram.m_apare[i] > 0) {
 count++;
 } 
 }
 
 int[] freeArea = new int[count];
 
 for (int i = 0, j = 0; i < mainFram.m_areaCount; i++) {
 if (mainFram.m_apare[i] > 0) {
 freeArea[j++] = i + 1;
 } 
 }
  
 return freeArea;
 }
 
}

以上是“基于java实现停车场管理系统的示例”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI