C#實(shí)現(xiàn)汽車租賃系統(tǒng)項(xiàng)目
更新時間:2019年01月29日 09:59:06 作者:服務(wù)器端的cookie
這篇文章主要為大家詳細(xì)介紹了C#實(shí)現(xiàn)汽車租賃系統(tǒng)項(xiàng)目,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
本文實(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, "無","",3); Car car2 = new Car("黑色", 100, "002", "奧迪", 0, "無","",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(); } //新車入庫操作 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=="無") { 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=""; } } } } } }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
相關(guān)文章
C# GetField方法的應(yīng)用實(shí)例講解
C#中的GetField是一個反射方法,用于獲取指定類型的字段信息,它可以通過字段名稱來獲取字段對象,并且可以在運(yùn)行時動態(tài)地訪問和操作這些字段,本文給大家介紹了C# GetField方法的應(yīng)用,需要的朋友可以參考下2024-04-04C#連接操作 MySQL 數(shù)據(jù)庫實(shí)例(使用官方驅(qū)動)
這篇文章主要介紹了C#連接操作 MySQL 數(shù)據(jù)庫實(shí)例(使用官方驅(qū)動),本文講解了C#中的Mysql連接方法和SQL操作方法,需要的朋友可以參考下2015-02-02解析C#中斷言與異常的應(yīng)用方式及異常處理的流程控制
這篇文章主要介紹了C#中斷言與異常的應(yīng)用方式及異常處理的流程控制,一般來說斷言用于修正程序員自己的錯誤而異常用于應(yīng)對程序運(yùn)行過程中可能出現(xiàn)的錯誤,需要的朋友可以參考下2016-01-01C# 添加對System.Configuration.dll文件的引用操作
這篇文章主要介紹了C# 添加對System.Configuration.dll文件的引用操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01