




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
資料范本本資料為word版本,可以直接編輯和打印,感謝您的下載設(shè)備管理系統(tǒng)程序設(shè)計(jì)地點(diǎn):時(shí)間:說明:本資料適用于約定雙方經(jīng)過談判,協(xié)商而共同承認(rèn),共同遵守的責(zé)任與義務(wù),僅供參考,文檔可直接下載或修改,不需要的部分可直接刪除,使用時(shí)請?jiān)敿?xì)閱讀內(nèi)容《《C#程序設(shè)計(jì)》大作業(yè)設(shè)備管理系統(tǒng)計(jì)算機(jī)科學(xué)與技術(shù)s121096143朱曉敏2012/11/61前言PAGEREFTOC\o"1-5"\h\z題目:專業(yè):學(xué)號:姓名:完成日期:目錄TOC\o"1-2"\h\z\uHYPERLINK\l"_Toc340320264"Toc340320264\h2HYPERLINK\l"_Toc340320265"Toc340320265\h2HYPERLINK\l"_Toc340320266"Toc340320266\h2HYPERLINK\l"_Toc340320267"Toc340320267\h2HYPERLINK\l"_Toc340320268"Toc340320268\h2HYPERLINK\l"_Toc340320269"Toc340320269\h2HYPERLINK\l"_Toc340320270"Toc340320270\h3HYPERLINK\l"_Toc340320271"Toc340320271\h3HYPERLINK\l"_Toc340320272"Toc340320272\h42需求分析PAGEREF要求PAGEREF任務(wù)PAGEREF2.3運(yùn)行環(huán)境PAGEREF2.4開發(fā)工具PAGEREF3概要設(shè)計(jì)與詳細(xì)設(shè)計(jì)PAGEREF3.1系統(tǒng)流程圖PAGEREF3.2數(shù)據(jù)庫設(shè)計(jì)PAGEREFHYPERLINK\l"_Toc340320273"Toc340320273\h4HYPERLINK\l〃_Toc340320274〃Toc340320274\h4HYPERLINK\l"_Toc340320275"Toc340320275\h5HYPERLINK\l"_Toc340320276"Toc340320276\h5HYPERLINK\l"_Toc340320277"Toc340320277\h7HYPERLINK\l"_Toc340320278"Toc340320278\h16HYPERLINK\l"_Toc340320279"Toc340320279\h24HYPERLINK\l"_Toc340320280"Toc340320280\h25HYPERLINK\l"_Toc340320281"Toc340320281\h03.2.1建立數(shù)據(jù)字典PAGEREF3.2.2數(shù)據(jù)庫詳細(xì)設(shè)計(jì)PAGEREF4編碼與實(shí)現(xiàn)PAGEREF4.1分析PAGEREF4.2具體代碼實(shí)現(xiàn)PAGEREF4.3界面實(shí)現(xiàn)PAGEREF5課程設(shè)計(jì)總結(jié)PAGEREF參考文獻(xiàn)PAGEREF評語及成績PAGEREF1刖言設(shè)計(jì)一個(gè)設(shè)備管理系統(tǒng),該系統(tǒng)主要針對設(shè)備管理員。系統(tǒng)首先要求用戶登錄,用戶必須輸入正確的用戶名和密碼;系統(tǒng)主界面包括設(shè)備查詢功能及數(shù)據(jù)維護(hù)功能,設(shè)備查詢功能是按一定的條件查詢所需要的設(shè)備信息,數(shù)據(jù)維護(hù)主要是通過增加或刪除來修改數(shù)據(jù)。2需求分析2.1要求用Csharp語言實(shí)現(xiàn)程序設(shè)計(jì);(2)采用.NET開發(fā)工具來設(shè)計(jì)主窗體和子窗體等;(3)畫出系統(tǒng)模塊的流程圖;(4)完成數(shù)據(jù)庫的設(shè)計(jì);(5)界面友好(良好的人機(jī)互交),程序要有注釋。2.2任務(wù)(1)設(shè)計(jì)一個(gè)登陸窗體和主窗體,7個(gè)子窗體來顯示相關(guān)信息;(2)管理員必須輸入正確的用戶名和密碼,才能進(jìn)入主窗體進(jìn)行相關(guān)操作;(3)畫出所有模塊的流程圖;(4)完成數(shù)據(jù)庫的設(shè)計(jì);(5)編寫代碼;(6)程序分析與調(diào)試。2.3運(yùn)行環(huán)境(1)WINDOWS2000/XP系統(tǒng)(2)VisualStudio2005編譯環(huán)境2.4開發(fā)工具C#:C#(CSharp)是微軟為NETFramework量身訂做的程序語言,C#擁有C/C++的強(qiáng)大功能以及VisualBasic簡易使用的特性,是第一個(gè)組件導(dǎo)向(Component-oriented)的程序語言,和C++與Java一樣亦為對象導(dǎo)向(object-oriented)程序語言。3概要設(shè)計(jì)與詳細(xì)設(shè)計(jì)3.1系統(tǒng)流程圖首先要有一個(gè)登錄模塊對登錄用戶進(jìn)行驗(yàn)證,如果驗(yàn)證成功則進(jìn)入系統(tǒng)的主窗體,登錄主窗體之后管理員以操作所有的功能:查詢、修改、增加設(shè)備信息、輔助工具、退出。開始用戶名及密碼選擇操作類型查詢設(shè)備信息修改設(shè)備信息添加設(shè)備信息刪除設(shè)備信息設(shè)備信息表退出NY圖3.1系統(tǒng)流程圖3.2數(shù)據(jù)庫設(shè)計(jì)3.2.1建立數(shù)據(jù)字典在開發(fā)設(shè)備管理系統(tǒng)之前,分析了改系統(tǒng)的數(shù)據(jù)量。選擇MicrosoftSQLServer2005數(shù)據(jù)庫存儲這些信息,數(shù)據(jù)庫命名為MyDevice,在數(shù)據(jù)庫中創(chuàng)建了2個(gè)數(shù)據(jù)表用于不同的信息。設(shè)備管理員數(shù)據(jù)字典名字:設(shè)備管理員表(User)描述:記錄管理員的具體詳細(xì)信息定義:設(shè)備管理員表二用戶編號+用戶名+密碼位置:設(shè)備管理數(shù)據(jù)庫設(shè)備數(shù)據(jù)字典名字:設(shè)備信息表(equipment)描述:記錄設(shè)備的具體詳細(xì)信息定義:設(shè)備信息表二設(shè)備編號+設(shè)備名稱+設(shè)備數(shù)量+設(shè)備價(jià)格位置:設(shè)備管理數(shù)據(jù)庫3.2.2數(shù)據(jù)庫詳細(xì)設(shè)計(jì)表1User表結(jié)構(gòu)表2equipment表結(jié)構(gòu)4編碼與實(shí)現(xiàn)4.1分析(1)登陸界面的設(shè)計(jì)——打開VisualStudio2005,新建一個(gè)名為DeviceSystem項(xiàng)目,然后打開一個(gè)窗體并命名為userlogin.cs。在此窗體中添加2個(gè)標(biāo)簽(用戶名和密碼)、2個(gè)按鈕(確定和取消)和2個(gè)textBox等,如圖所示圖4.1登陸窗體(2)系統(tǒng)主窗體的設(shè)計(jì)一一添加窗體并命名為frmMain.cs,在此窗體添加一個(gè)MenuStrip控件,一個(gè)ToolStrip控件及3個(gè)按鈕,一個(gè)Time控件,toolStripStatus控件并分別設(shè)置各屬性,如圖所示圖4.2系統(tǒng)主窗體(3)子窗體的設(shè)計(jì)添加4個(gè)窗體并依此命名為frmselecName.cs、frmselecPrice.cs、frmDataMaint.cs、frmDeletedevice.cs并分別添口工具控件及設(shè)置各屬性,如圖所示圖4.3按名稱查詢窗圖4.4按價(jià)格查詢窗體圖4.5數(shù)據(jù)維護(hù)窗體4.2具體代碼實(shí)現(xiàn)登錄窗體一frmlogin.csusingSystem;usingSystem.Configuration;namespaceDeviceSystem{privatevoidbtnYes_Click(objectsender,EventArgse)(stringuserName=txtName.Text;stringpassword=txtPwd.Text;stringcons=ConfigurationManager.ConnectionStrings["DeviceSystem.Properties.Settings.MyDeviceConnectionString"].ConnectionString;SqlConnectionconnection=newSqlConnection(cons);〃獲取用戶名和密碼匹配的行的數(shù)量的SQL語句stringsql二String.Format("selectcount(*)from[User]whereusername='{0}'andpassword='{1}'",userName,password);try(connection.Open();〃打開數(shù)據(jù)庫連接SqlCommandcommand=newSqlCommand(sql,connection);〃創(chuàng)建Command對象intnum=(int)command.ExecuteScalar();//執(zhí)行查詢語句,返回匹配的行數(shù)if(num>0)(〃如果有匹配的行,則表明用戶名和密碼正確MessageBox.Show("歡迎進(jìn)入設(shè)備管理系統(tǒng)!",〃登錄成功〃,MessageBoxButtons.OK,MessageBoxIcon.Information);frmMainmainForm=newfrmMain();〃創(chuàng)建主窗體對象mainForm.Show();〃顯示窗體this.Visible=false;//登陸窗體隱藏}else(MessageBox.Show("您輸入的用戶名或密碼錯(cuò)誤!",〃登錄失敗〃,MessageBoxButtons.AbortRetryIgnore,MessageBoxIcon.Exclamation);}//MessageBoxIcon.Exclamation是由三角符號組成的警惕圖}catch(Exceptionex)(MessageBox.Show(ex.Message,"操作數(shù)據(jù)庫出錯(cuò)啦!〃,MessageBoxButtons.OK,MessageBoxIcon.Exclamation);}finally(connection.Close();〃關(guān)閉數(shù)據(jù)庫連接}}privatevoidbtnCancel_Click(objectsender,EventArgse)(txtName.Text="";txtPwd.Text="";txtName.Focus();//將光標(biāo)指定在txtName上}}}主窗體frmMain.csusingSystem;usingSystem.Windows.Forms;namespaceDeviceSystem{privatevoidtimer1_Tick(objectsender,EventArgse)(DateTimedt=DateTime.Now;//獲取當(dāng)前時(shí)間tssData.Text=dt.ToLongDateString();}privatevoidtsmExit_Click(objectsender,EventArgse)(Application.Exit();}privatevoidtsmSelecName_Click(objectsender,EventArgse)(frmselecNameselectname=newfrmselecName();//創(chuàng)建子窗體對象selectname.MdiParent=this;//指定當(dāng)前窗體為MDI父窗體selectname.Show();〃打開子窗體tssStatus.Text=〃按名稱查詢〃;//在狀態(tài)欄中顯示操作內(nèi)容}privatevoidtsmSelecPrice_Click(objectsender,EventArgse)(frmselecPriceselectprice=newfrmselecPrice();//創(chuàng)建子窗體對象selectprice.MdiParent=this;//指定當(dāng)前窗體為MDI父窗體selectprice.Show();//打開子窗體tssStatus.Text=〃按單價(jià)查詢〃;//在狀態(tài)欄中顯示操作內(nèi)容}privatevoidtsmUpdate_Click(objectsender,EventArgse)(frmDataMaintdatamaint=newfrmDataMaint();//創(chuàng)建子窗體對象datamaint.MdiParent=this;//指定當(dāng)前窗體為MDI父窗體datamaint.Show();〃打開子窗體tssStatus.Text=〃修改數(shù)據(jù)〃;//在狀態(tài)欄中顯示操作內(nèi)容}privatevoidtsmabout_Click(objectsender,EventArgse)(frmAboutabout=newfrmAbout();//創(chuàng)建子窗體對象about.MdiParent=this;//指定當(dāng)前窗體為MDI父窗體about.Show();//打開子窗體tssStatus.Text=〃關(guān)于我們〃;//在狀態(tài)欄中顯示操作內(nèi)容}privatevoidtsmjsq_Click(objectsender,EventArgse)(frmjsqjsq=newfrmjsq();//創(chuàng)建子窗體對象jsq.MdiParent=this;//指定當(dāng)前窗體為MDI父窗體jsq.Show();〃打開子窗體tssStatus.Text=〃計(jì)算器〃;//在狀態(tài)欄中顯示操作內(nèi)容}privatevoidtsmdate_Click(objectsender,EventArgse)frmTimetime=newfrmTime();〃創(chuàng)建子窗體對象time.MdiParent=this;//指定當(dāng)前窗體為MDI父窗體time.Show();//打開子窗體tssStatus.Text=〃萬年歷〃;//在狀態(tài)欄中顯示操作內(nèi)容}privatevoidtsmdel_Click(objectsender,EventArgse)(frmDeletedevicedelete=newfrmDeletedevice();//創(chuàng)建子窗體對象delete.MdiParent=this;//指定當(dāng)前窗體為MDI父窗體delete.Show();//打開子窗體tssStatus.Text二〃設(shè)備數(shù)據(jù)維護(hù)〃;〃在狀態(tài)欄中顯示操作內(nèi)容}}}子窗體frmMain.csusingSystem;usingSystem.Windows.Forms;usingSystem.Data.SqlClient;usingSystem.Configuration;namespaceDeviceSystem{publicfrmselecName()InitializeComponent();stringcons=ConfigurationManager.ConnectionStrings["DeviceSystem.Properties.Settings.MyDeviceConnectionString"].ConnectionStringconnection=newSqlConnection(cons);}privatevoidfrmselecName_Load(objectsender,EventArgse)(//TODO:這行代碼將數(shù)據(jù)加載到表“myDeviceDataSet.equipment”中。您可以根據(jù)需要移動(dòng)或移除它。this.equipmentTableAdapter.Fill(this.myDeviceDataSet.equipment);}privatevoidbtnSelectName_Click(objectsender,EventArgse)(stringname=textBox1.Text;〃按名稱查詢設(shè)備stringsql=String.Format("select*fromequipmentwherenamelike'%{0}%'”,name);try(SqlDataAdapterdataAdapter=newSqlDataAdapter(sql,connection);DataSetdatSet=newDataSet("equipment");dataAdapter.Fill(datSet);〃設(shè)置各列的顯示數(shù)據(jù)字段dataGridView1.Columns[0].DataPropertyName="id";dataGridView1.Columns[1].DataPropertyName="name";dataGridView1.Columns[2].DataPropertyName="price";dataGridView1.Columns[3].DataPropertyName="count";dataGridView1.DataSource=datSet.Tables[0];}catch(Exceptionex)(MessageBox.Show(ex.Message,"操作數(shù)據(jù)庫出錯(cuò)啦!",MessageBoxButtons.OK,MessageBoxIcon.Exclamation);}}privatevoidbutton1_Click(objectsender,EventArgse)(this.Close();}}}子窗體frmselecPrice.csusingSystem;usingSystem.Drawing;usingSystem.Data.SqlClient;usingSystem.Configuration;namespaceDeviceSystempublicfrmselecPrice()(InitializeComponent();stringcons=ConfigurationManager.ConnectionStrings["DeviceSystem.Properties.Settings.MyDeviceConnectionString"].ConnectionString;connection=newSqlConnection(cons);}privatevoidbtnselectPrice_Click(objectsender,EventArgse)(//decimal表示十進(jìn)制數(shù)decimalprice1,price2;try(price1=Convert.ToDecimal(textBox1.Text);price2=Convert.ToDecimal(textBox2.Text);}catch(price1=0;price2=1000000M;//默認(rèn)為最大值}if(price1>price2)(//如果price1>price2,交換兩者decimaltemp二price1;pricel二price2;price2二temp;}〃按價(jià)格查詢設(shè)備stringsql=String.Format("select*fromequipmentwherepricebetween{0}and{1}”,price1,price2);try{SqlDataAdapterdataAdapter=newSqlDataAdapter(sql,connection);DataSetdatSet=newDataSet("equipment");dataAdapter.Fill(datSet);〃設(shè)置各列的顯示數(shù)據(jù)字段dataGridView1.Columns[0].DataPropertyName="id";dataGridView1.Columns[1].DataPropertyName="name";dataGridView1.Columns[2].DataPropertyName="price";dataGridView1.Columns[3].DataPropertyName="count";dataGridView1.DataSource=datSet.Tables[0];}catch(Exceptionex){MessageBox.Show(ex.Message,"操作數(shù)據(jù)庫出錯(cuò)啦!",MessageBoxButtons.OK,MessageBoxIcon.Exclamation);}}privatevoidfrmselecPrice_Load(objectsender,EventArgse)(//TODO:這行代碼將數(shù)據(jù)加載到表“myDeviceDataSet.equipment”中。您可以根據(jù)需要移動(dòng)或移除它。this.equipmentTableAdapter.Fill(this.myDeviceDataSet.equipment);}privatevoidbutton1_Click(objectsender,EventArgse)(this.Close();}}子窗體frmDataMaint.csusingSystem;usingSystem.Data.SqlClient;namespaceDeviceSystem{privatevoidfrmDataMaint_Load(objectsender,EventArgse)(//TODO:這行代碼將數(shù)據(jù)加載到表“myDeviceDataSet.equipment”中。您可以根據(jù)需要移動(dòng)或移除它。this.equipmentTableAdapter.Fill(this.myDeviceDataSet.equipment);}privatevoidbtnsave_Click(objectsender,EventArgse)(equipmentTableAdapter.Update(myDeviceDataSet.equipment);}privatevoidbtnguanbi_Click(objectsender,EventArgse)(this.Close();}privatevoidbtnrefresh_Click(objectsender,EventArgse)(equipmentTableAdapter.Fill(myDeviceDataSet.equipment);}}}子窗體frmDeletedevice.csusingSystem;usingSystem.Data.SqlClient;usingSystem.Configuration;namespaceDeviceSystem{publicpartialclassfrmDeletedevice:Form(SqlConnectioncon;SqlDataAdapterda;DataSetds;SqlCommandcom;publicfrmDeletedevice()InitializeComponent();}privatevoidfrmDeletedevice_Load(objectsender,EventArgse)(BKY();stringcons=ConfigurationManager.ConnectionStrings["DeviceSystem.Properties.Settings.MyDeviceConnectionString"].ConnectionString;con=newSqlConnection(cons);////綁定cbosmda=newSqlDataAdapter("selectnamefromequipment",con);ds=newDataSet();da.Fill(ds,"equipment");cbosm.DataSource=ds.Tables["equipment"];cbosm.DisplayMember="name";FillDgvshebei();}privatevoidFillDgvshebei()(//綁定dgvshebeida=newSqlDataAdapter("select*fromequipment",con);ds=newDat
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 智能金融科技應(yīng)用開發(fā)合同
- 中心社區(qū)房屋買賣代理合同
- 電子設(shè)備租賃服務(wù)合同
- 第3單元第9課《按圖索驥-制作熱點(diǎn)鏈接》-教學(xué)設(shè)計(jì)2023-2024學(xué)年清華大學(xué)版(2012)初中信息技術(shù)八年級下冊
- Unit3 Could you please clean the room Section A (3a) 教學(xué)設(shè)計(jì) 2024-2025學(xué)年人教版八年級英語上冊
- 第17課 第二次世界大戰(zhàn)與戰(zhàn)后國際秩序的形成 教學(xué)設(shè)計(jì)-2023-2024學(xué)年高一統(tǒng)編版2019必修中外歷史綱要下冊
- 第六單元課外古詩詞誦讀《如夢令(常記溪亭日暮)》教學(xué)設(shè)計(jì)-2024-2025學(xué)年統(tǒng)編版語文八年級上冊
- 認(rèn)識倍數(shù) 教學(xué)設(shè)計(jì)-2024-2025學(xué)年冀教版數(shù)學(xué)四年級上冊
- 第6單元 單元分析2024-2025學(xué)年四年級語文上冊教學(xué)設(shè)計(jì)(統(tǒng)編版)
- Unit 1 Lesson 4 Againplease?。ń虒W(xué)設(shè)計(jì))-2024-2025學(xué)年魯科版(五四學(xué)制)(三起)英語五年級上冊
- 級2班小組合作學(xué)習(xí)加減分細(xì)則
- 綜合交通運(yùn)輸概論
- 通用稅務(wù)自查情況說明報(bào)告(7篇)
- 比亞迪漢DM-i說明書
- 現(xiàn)澆箱梁施工危險(xiǎn)源辨識與分析
- 晚熟的人(莫言諾獎(jiǎng)后首部作品)
- GA/T 2002-2022多道心理測試通用技術(shù)規(guī)程
- 《玉磨彌蒙鐵路建設(shè)項(xiàng)目標(biāo)準(zhǔn)化管理考核實(shí)施辦法》的通知滇南安質(zhì)〔XXXX〕號
- 2023外貿(mào)業(yè)務(wù)協(xié)調(diào)期中試卷
- 《產(chǎn)業(yè)基礎(chǔ)創(chuàng)新發(fā)展目錄(2021年版)》(8.5發(fā)布)
- YY/T 0729.4-2009組織粘合劑粘接性能試驗(yàn)方法第4部分:傷口閉合強(qiáng)度
評論
0/150
提交評論