C#實(shí)現(xiàn)汽車租賃系統(tǒng)項(xiàng)目
本文實(shí)例為大家分享了C#實(shí)現(xiàn)汽車租賃系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下
汽車和卡車的父類
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//父類變量和方法
namespace 汽車租賃系統(tǒng)
{
public class Inheritance
{
public Inheritance()
{ }
public Inheritance(string color,double everydaymoney,string no,string name,int rentdate,string load,string rentuser,int services)
{
this.Color = color;
this.EverydayMoney = everydaymoney;
this.No = no;
this.Name = name;
this.RentDate = rentdate;
this.Load = load;
this.RentUser = rentuser;
this.Services = services;
}
public string Color { get; set; }
public double EverydayMoney { get; set; }
public string No { get; set; }
public string Name { get; set; }
public int RentDate { get; set; }
public string Load { get; set; }
public string RentUser { get; set; }
public int Services { get; set; }
//父類計(jì)算租金方法
public virtual double Vehicle()
{
double rentMoney;
rentMoney = this.RentDate * this.EverydayMoney;
return rentMoney;
}
}
}
汽車
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 汽車租賃系統(tǒng)
{
public class Car:Inheritance
{
public Car()
{ }
public Car( string color,double everydaymoney,string no,string name,int rentdate,string load,string rentuser,int services)
:base(color,everydaymoney,no,name ,rentdate,load,rentuser,services)
{
}
//省略重寫汽車計(jì)算價(jià)格方法
}
}
卡車
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 汽車租賃系統(tǒng)
{
public class Truck:Inheritance
{
public Truck()
{ }
public Truck( string color,double everydaymoney,string no,string name,int rentdate,string load, string rentuser,int services)
:base(color,everydaymoney,no,name ,rentdate,load,rentuser,services)
{
}
//省略重寫卡車計(jì)算方法
}
}
主界面
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace 汽車租賃系統(tǒng)
{
public partial class Main : Form
{
public Main()
{
InitializeComponent();
}
Inheritance inheri = new Inheritance();
//保存未租車的集合
Dictionary<string, Inheritance> rentDic = new Dictionary<string, Inheritance>();
//保存已租車的集合
Dictionary<string, Inheritance> rentedDic = new Dictionary<string, Inheritance>();
//將未租車集合綁定到listview容器中
//將數(shù)據(jù)綁定到listview容器上
public void BangDing(ListView listview,Dictionary<string ,Inheritance> dic)
{
listview.FullRowSelect = true;
ListViewItem items;
listview.Items.Clear();
foreach (Inheritance item in dic.Values)
{
items = new ListViewItem();
items.Text = item.No;
items.SubItems.Add(item.Name);
items.SubItems.Add(item.Color);
items.SubItems.Add(item.Services.ToString());
items.SubItems.Add(item.EverydayMoney.ToString());
items.SubItems.Add(item.Load);
listview.Items.Add(items);
}
}
//進(jìn)行未租車集合初始化
public void AddRent()
{
Car car1 = new Car("黑色", 100, "001", "奧迪", 0, "無(wú)","",3);
Car car2 = new Car("黑色", 100, "002", "奧迪", 0, "無(wú)","",3);
Truck truck1 = new Truck("紅色", 200, "A001", "一汽", 0, "20","",6);
rentDic.Add(car1.No, car1);
rentDic.Add(car2.No, car2);
rentDic.Add(truck1.No, truck1);
}
//顯示未租車信息
private void button2_Click(object sender, EventArgs e)
{
BangDing(listView1,rentDic);
}
private void Main_Load(object sender, EventArgs e)
{
AddRent();
}
//進(jìn)行租車操作
private void button1_Click(object sender, EventArgs e)
{
string key = this.listView1.SelectedItems[0].Text;
rentDic[key].RentUser = this.textBox1.Text;
rentedDic.Add(rentDic[key].No,rentDic[key]);
if (rentDic.ContainsKey(key))
{
rentDic.Remove(key);
}
BangDing(listView1,rentDic);
MessageBox.Show("已出租");
}
private void button4_Click(object sender, EventArgs e)
{
BangDing(listView2,rentedDic);
}
//進(jìn)行還車結(jié)算
public void JieSuan()
{
string key = this.listView2.SelectedItems[0].Text;
rentedDic[key].RentDate = Convert.ToInt32(this.textBox2.Text);
rentDic.Add(rentedDic[key].No,rentedDic[key]);
double rentMoney = rentedDic[key].Vehicle();
if (rentedDic.ContainsKey(key))
{
rentedDic.Remove(key);
}
BangDing(listView2,rentedDic);
MessageBox.Show("租金為:",rentMoney.ToString());
}
private void button5_Click(object sender, EventArgs e)
{
JieSuan();
}
//新車入庫(kù)操作
private void button6_Click(object sender, EventArgs e)
{
string no = this.textBox3.Text;
string name = this.textBox4.Text;
string color = this.textBox5.Text;
int services = Convert.ToInt32(this.textBox6.Text);
double renteverydaymoney = Convert.ToInt32(this.textBox7.Text);
string load = this.textBox8.Text;
//進(jìn)行類型判斷
if (load=="無(wú)")
{
inheri = new Car(color,renteverydaymoney,no,name,0,load,"",services);
}
else
{
inheri = new Truck(color,renteverydaymoney,no,name,0,load,"",services);
}
rentDic.Add(inheri.No,inheri);
MessageBox.Show("添加成功","提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
//進(jìn)行文本清空操作
foreach (TabPage page in tabControl1.TabPages)
{
foreach (Control control in page.Controls)
{
if (control is TextBox)
{
control.Text="";
}
}
}
}
}
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- c#實(shí)現(xiàn)KTV點(diǎn)歌系統(tǒng)
- C#圖書(shū)管理系統(tǒng) 附源碼下載
- C#實(shí)現(xiàn)學(xué)員信息管理系統(tǒng)
- C#實(shí)現(xiàn)簡(jiǎn)單學(xué)生信息管理系統(tǒng)
- C#實(shí)現(xiàn)餐飲管理系統(tǒng)
- C#實(shí)現(xiàn)餐飲管理系統(tǒng)完整版
- C#實(shí)現(xiàn)餐廳管理系統(tǒng)
- C#實(shí)現(xiàn)影院售票系統(tǒng)
- C#超市收銀系統(tǒng)設(shè)計(jì)
- C#實(shí)現(xiàn)在線點(diǎn)餐系統(tǒng)
相關(guān)文章
C# GetField方法的應(yīng)用實(shí)例講解
C#中的GetField是一個(gè)反射方法,用于獲取指定類型的字段信息,它可以通過(guò)字段名稱來(lái)獲取字段對(duì)象,并且可以在運(yùn)行時(shí)動(dòng)態(tài)地訪問(wèn)和操作這些字段,本文給大家介紹了C# GetField方法的應(yīng)用,需要的朋友可以參考下2024-04-04
winform樹(shù)形菜單無(wú)限級(jí)分類實(shí)例
本文介紹了“winform樹(shù)形菜單無(wú)限級(jí)分類實(shí)例”,需要的朋友可以參考一下2013-03-03
c#中單例類與靜態(tài)類的區(qū)別以及使用場(chǎng)景
這篇文章主要給大家介紹了關(guān)于c#中單例類與靜態(tài)類的區(qū)別以及使用場(chǎng)景的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01
C#連接操作 MySQL 數(shù)據(jù)庫(kù)實(shí)例(使用官方驅(qū)動(dòng))
這篇文章主要介紹了C#連接操作 MySQL 數(shù)據(jù)庫(kù)實(shí)例(使用官方驅(qū)動(dòng)),本文講解了C#中的Mysql連接方法和SQL操作方法,需要的朋友可以參考下2015-02-02
解析C#中斷言與異常的應(yīng)用方式及異常處理的流程控制
這篇文章主要介紹了C#中斷言與異常的應(yīng)用方式及異常處理的流程控制,一般來(lái)說(shuō)斷言用于修正程序員自己的錯(cuò)誤而異常用于應(yīng)對(duì)程序運(yùn)行過(guò)程中可能出現(xiàn)的錯(cuò)誤,需要的朋友可以參考下2016-01-01
C# 添加對(duì)System.Configuration.dll文件的引用操作
這篇文章主要介紹了C# 添加對(duì)System.Configuration.dll文件的引用操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-01-01

