版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、軟件開發(fā)課程設(shè)計(jì)報(bào)告設(shè)計(jì)題目:ATM取款機(jī)系統(tǒng)專 業(yè) 雙學(xué)位姓 名學(xué) 號指導(dǎo)教師時(shí) 間:目錄一、概述 2.二、設(shè)計(jì)目的 2.三、系統(tǒng)總體設(shè)計(jì) 2.3.1 系統(tǒng)功能模塊劃分 2.3.2 ATM 取款機(jī)系統(tǒng)功能結(jié)構(gòu)圖 3.3.3 各模塊詳細(xì)設(shè)計(jì)及用戶使用說明 4.3.3.1 登陸模塊 4.3.3.2 選擇服務(wù)模塊 4.3.3.3 取款服務(wù)模塊 5.3.3.4 修改密碼模塊 6.3.3.5 存款服務(wù)模塊 6.3.3.6 查詢余額模塊 6.3.3.7 轉(zhuǎn)賬服務(wù)模塊 7.3.3.8 通信繳費(fèi)模塊 7.3.3.9 咨詢服務(wù)模塊 8.3.3.10 退出操作模塊 8.四、系統(tǒng)運(yùn)行結(jié)果及存在問題 8.4.1 運(yùn)
2、行結(jié)果 8.4.2 存在問題 1.4.五、設(shè)計(jì)體會 1.4.六、源程序 1.4.ATM 取款機(jī)系統(tǒng)一、概述自動柜員機(jī)( ATM )自發(fā)明以來,以其高效和低成本一直受到銀行業(yè)的青 睞,從我國引進(jìn)第一臺柜員機(jī)至今已經(jīng)擁有 6萬臺左右的規(guī)模, 但與世界平均水 平相比,我國的人均擁有量還有差距, 與先進(jìn)國家相比人均擁有數(shù)量甚至不到四 分之一。為了增強(qiáng)我國銀行的競爭力,國家相繼出臺了很多相關(guān)措施,比如關(guān) 于促進(jìn)銀行卡產(chǎn)業(yè)發(fā)展的若干意見 等,各商業(yè)銀行也對柜員機(jī)的發(fā)展制定了詳 細(xì)的規(guī)劃,甚至出現(xiàn)了由銀行單獨(dú)購買模式發(fā)展為銀行租賃商業(yè)公司 ATM 的模 式??梢哉f, 隨著我國經(jīng)濟(jì)的屈起, 我國的柜員機(jī)也正面
3、臨著一個(gè)快速發(fā)展的春 天。二、設(shè)計(jì)目的(1) 復(fù)習(xí)、鞏固軟件開發(fā)的基礎(chǔ)知識,進(jìn)一步加深對軟件開發(fā)的理解和掌握;(2) 課程設(shè)計(jì)為學(xué)生提供了一個(gè)既動手又動腦,獨(dú)立實(shí)踐的機(jī)會,將課本上的 理論知識和實(shí)際有機(jī)的結(jié)合起來, 鍛煉學(xué)生的分析解決實(shí)際問題的能力。 提高學(xué) 生適應(yīng)實(shí)際,實(shí)踐編程的能力;(3) 培養(yǎng)學(xué)生在項(xiàng)目開發(fā)中團(tuán)隊(duì)合作精神、創(chuàng)新意識及能力。三、系統(tǒng)總體設(shè)計(jì)3.1 系統(tǒng)功能模塊劃分本系統(tǒng)主要包括登陸模塊設(shè)計(jì), 選擇服務(wù)模塊設(shè)計(jì), 取款服務(wù)模塊設(shè)計(jì), 修 改密碼模塊設(shè)計(jì),存款服務(wù)模塊設(shè)計(jì),查詢余額模塊設(shè)計(jì),轉(zhuǎn)賬服務(wù)模塊設(shè)計(jì), 通信繳費(fèi)模塊設(shè)計(jì), 咨詢服務(wù)模塊設(shè)計(jì), 退出操作模塊設(shè)計(jì)等幾個(gè)功能模
4、塊。 其 中(1) 登陸模塊設(shè)計(jì):與 ATM 柜員機(jī)打交道比較多的,也是大家對安全比較關(guān) 心的問題:密碼。所以第一個(gè)界面就是要輸入密碼和卡號才能繼續(xù)服務(wù)。(2) 選擇服務(wù)模塊設(shè)計(jì):在選擇服務(wù)模塊中,有各種 ATM 的服務(wù)功能,只 要用戶在該界面中選擇按鈕,它就會彈出各個(gè)相應(yīng)的界面。(3) 取款模塊設(shè)計(jì):在取款模塊中,和其他的界面也是同樣的結(jié)構(gòu)。也是有 一個(gè)文本框和一個(gè)按鈕還有標(biāo)簽組成的,實(shí)現(xiàn)用戶取款的服務(wù)。(4) 修改密碼模塊設(shè)計(jì):在修改密碼模塊中,必須要兩次輸入你的新密碼, 且兩次要匹配,否則系統(tǒng)會報(bào)錯(cuò),然后再重新回到修改密碼的界面。(5) 存款模塊設(shè)計(jì):在存款模塊中,和其他的界面也是同樣的
5、結(jié)構(gòu)。也是有 一個(gè)文本框和一個(gè)按鈕還有標(biāo)簽組成的,實(shí)現(xiàn)用戶取款的服務(wù)。(6) 查詢余額模塊設(shè)計(jì):此功能非常簡單,僅僅是實(shí)現(xiàn)彈出卡的功能。(7) 轉(zhuǎn)賬服務(wù)模塊設(shè)計(jì):在轉(zhuǎn)賬模塊中,必須兩次輸入要轉(zhuǎn)賬的賬戶號,并 且兩次輸入必須相同,否則系統(tǒng)會報(bào)錯(cuò);然后輸入轉(zhuǎn)賬金額,完成轉(zhuǎn)賬。(8) 通信繳費(fèi)模塊設(shè)計(jì):在通信繳費(fèi)模塊中,首先,登陸人要選擇指定的沖 值金額,其次,要兩次輸入要繳費(fèi)的手機(jī)號碼,且兩次輸入要相同,否則系統(tǒng)會 報(bào)錯(cuò)。(9) 咨詢服務(wù)模塊設(shè)計(jì):該功能僅需要實(shí)現(xiàn)彈出卡的功能。(10) 退出操作模塊設(shè)計(jì):此功能非常簡單,僅僅是實(shí)現(xiàn)彈出卡的功能。3.2 ATM取款機(jī)系統(tǒng)功能結(jié)構(gòu)圖我所設(shè)計(jì)的ATM柜員
6、機(jī)主要是由登錄頁面模塊還由選擇服務(wù)模塊組成,其 中選擇服務(wù)模塊又由取款服務(wù)模塊、修改密碼模塊、存款服務(wù)模塊、查詢余額模 塊、轉(zhuǎn)賬服務(wù)模塊、通信繳費(fèi)模塊、咨詢服務(wù)模塊、退出操作模塊組成??傮w設(shè) 計(jì)中最核心的問題是系統(tǒng)總體功能結(jié)構(gòu)的確定和子系統(tǒng)與模塊的劃分,結(jié)構(gòu)化。ATM取款機(jī)系統(tǒng)功能結(jié)構(gòu)圖,如下圖1所示:登陸頁面模塊選擇服務(wù)模塊該ATM取款機(jī)系統(tǒng)各個(gè)部分負(fù)責(zé)的主要業(yè)務(wù)如下:(1) 登陸頁面模塊,對取款者進(jìn)行身份驗(yàn)證。(2) 選擇服務(wù)模塊,包括取款服務(wù),修改密碼,存款服務(wù),查詢余額,轉(zhuǎn) 賬服務(wù),通信繳費(fèi),咨詢服務(wù),退出操作等功能模塊。(3) 取款服務(wù)模塊,實(shí)現(xiàn)取款的具體操作。(4) 修改密碼模塊,
7、可以方便的實(shí)現(xiàn)當(dāng)前登陸人員對自己的密碼進(jìn)行修改。(5) 存款服務(wù)模塊,實(shí)現(xiàn)存款的具體操作。(6) 查詢余額模塊,查看當(dāng)前登陸人員的余額。(7) 轉(zhuǎn)賬服務(wù)模塊,實(shí)現(xiàn)當(dāng)前登陸人員向另一賬戶進(jìn)行轉(zhuǎn)賬。(8) 通信繳費(fèi)模塊,實(shí)現(xiàn)當(dāng)前登陸人員對手機(jī)進(jìn)行繳費(fèi)沖值。(9) 咨詢服務(wù)模塊,對當(dāng)前登陸人員提供電話人工服務(wù)。(10) 退卡模塊,完成取款,查詢等功能后退出銀行卡。3.3 各模塊詳細(xì)設(shè)計(jì)及用戶使用說明初始密碼 :1234563.3.1 登陸模塊程序運(yùn)行后,進(jìn)入登陸頁面一,要求登陸著插卡,并點(diǎn)擊確認(rèn),進(jìn)入登陸頁 面二,要求登陸者輸入密碼,點(diǎn)擊確定,若密碼正確,進(jìn)入選擇服務(wù)模塊,否則 系統(tǒng)提示 “帳號不一
8、致或帳號與金額輸入有誤,請確認(rèn) ”,此模塊相應(yīng)的詳細(xì)源代碼見附錄部分,部分代碼如下:panelmain=new JPanel(null );panelmain.setBackgroundn( ew Color(119,119,253);Iblpwd= new JLabel(請輸入您的銀行卡密碼:”);panelmain.add(lblpwd);lblpwd.setBounds(150, 20, 150, 30);3.3.2選擇服務(wù)模塊在選擇服務(wù)模塊中,有各種 ATM 的服務(wù)功能,只要用戶在該界面中選擇按 鈕,它就會彈出各個(gè)相應(yīng)的界面。 每一個(gè)按鈕都有監(jiān)聽器, 監(jiān)視器就會知道所發(fā) 生的事件, 對
9、此事件進(jìn)行處理。 其中的詳細(xì)源代碼請參見附錄部分, 部分代碼如 下:panel3=new JPanel(null);panel3.setBackgroundn(ew Color(119,119,253);Iblwel =new JLabel(username+歡迎使用羅燦銀行 ATM 系統(tǒng));lblwel.setBounds(20,15,350,30);panel3.add(lblwel);lblwell = new JLabel(請選擇您需要的交易類型);lblwel1.setBounds(220,55,350,30);panel3.add(lblwel1);btn3=new JButton
10、(取款服務(wù));btn3.addActionListener(this); btn3.setBounds(20,90,100,30);panel3.add(btn3);btn4=new J B utto n (修改密碼 );btn4.addActionListener(this);btn4.setBounds(20,150,100,30);panel3.add(btn4);btn5=new JButton(存款服務(wù));btn5.addActionListener(this);btn5.setBounds(20,210,100,30);panel3.add(btn5);btn6=new J B u
11、tto n (查詢余額 );btn6.addActionListener(this);btn6.setBounds(20,270,100,30);panel3.add(btn6);btn7=new JButton(轉(zhuǎn)賬服務(wù));btn7.addActionListener(this); btn7.setBounds(300,90,100,30);panel3.add(btn7);btn8=new J B utto n (通信交費(fèi) );btn8.addActionListener(this);btn8.setBounds(300,150,100,30);panel3.add(btn8);btn9=
12、new JButton(咨詢服務(wù));btn9.addActionListener(this);btn9.setBounds(300,210,100,30);panel3.add(btn9);btn 10=new JButton(退出操作);btn10.addActionListener(this);btn10.setBounds(300,270,100,30);panel3.add(btn10);3.3.3 取款服務(wù)模塊在取款模塊中, 和其他的界面也是同樣的結(jié)構(gòu)。 也是有一個(gè)文本框和一個(gè)按 鈕還有標(biāo)簽組成的。用戶在文本框中輸入他想取的數(shù)額, 但是必須是 1 00的倍數(shù)。 當(dāng)然了取款的時(shí)候也不能
13、超過卡里的余額, 再就是卡里的余額不能為負(fù), 否則就 會彈出報(bào)錯(cuò)的窗口。其方法的具體實(shí)現(xiàn)代碼請參見附錄部分,部分代碼如下:panel4=new JPanel(null );panel4.setBackgroundn( ew Color(119,119,253);Iblqukua n=new JLabel(請輸入您的取款數(shù):);panel4.add(lblqukuan);lblqukuan.setBounds(115, 20, 150, 30);Iblqukua n=new JLabeI(提示:只能是100元或100元的整數(shù)倍。); panel4.add(lblqukuan);lblqukuan
14、.setBounds(115, 50, 300, 30);3.3.4 修改密碼模塊在修改密碼模塊中, 你必須要兩次輸入你的新密碼, 且兩次藥匹配, 否則會 報(bào)錯(cuò),然后再重新回到修改密碼的界面。 在修改密碼時(shí)用到的方法的具體實(shí)現(xiàn)代 碼請參見附錄部分,部分代碼如下:panelchangepwd=new JPanel(null);panelchangepwd.setBackgroundn(ew Color(119,119,253);Iblpwd仁new JLabeI(請輸入您需要修改的6位密碼:);lblpwd1.setBounds(115, 30, 300, 30);panelchangepwd.
15、add(lblpwd1);Iblpwd2= new JLabeI(請?jiān)俅屋斎肽枰薷牡?位密碼:); lblpwd2.setBounds(115, 110, 300, 30); paneIchangepwd.add(IbIpwd2);3.3.5存款服務(wù)模塊在存款模塊中, 和其他的界面也是同樣的結(jié)構(gòu)。 也是有一個(gè)文本框和一個(gè)按 鈕還有標(biāo)簽組成的。 用戶在存款口放入存款, 但是必須是 100的倍數(shù)。 其方法的 具體實(shí)現(xiàn)代碼請參見附錄部分,部分代碼如下:paneIsave=new JPaneI(nuII);paneIsave.setBackgroundn(ew CoIor(119,119,253)
16、; lblsave=new JLabel(請?jiān)诖婵羁谔幏湃氪婵?; IbIsave.setBounds(90,70,350,30); panelsave.add(lblsave);Iblsave仁new JLabeI(請注意:只接收100元或100元的整數(shù)倍存款); lblsave1.setBounds(90,110,350,30);panelsave.add(lblsave1);3.3.6 查詢余額模塊用戶點(diǎn)擊查詢余額按鈕,則會彈出用戶賬戶中的余額,并顯示用戶的卡號。其方法的具體實(shí)現(xiàn)代碼請參見附錄部分,部分代碼如下:panelremain=new JPanel(null );panelrem
17、ain.setBackgroundn( ew Color(119,119,253);Iblrema in仁new JLabel(卡號:+card nu m);lblremain1.setBounds(90,70,350,30);panelremain.add(lblremain1);Iblremain=new JLabeI(您的余額為+lastmoney+元,請繼續(xù)您的操作! ” ); lblremain.setBounds(90,110,350,30);panelremain.add(lblremain);3.3.7轉(zhuǎn)賬服務(wù)模塊在該模塊中, 為防止用戶將對方的賬號輸入錯(cuò)誤, 要求用戶輸入兩遍
18、對方的 賬號,并輸入轉(zhuǎn)賬金額,若輸入錯(cuò)誤,則系統(tǒng)會提示用戶 “帳號不一致或帳號與 金額輸入有誤 ,請確認(rèn) ”。其方法的具體實(shí)現(xiàn)代碼請參見附錄部分,部分代碼如下:paneltrans=new JPanel(null );paneltrans.setBackgroundn(ew Color(119,119,253);lbltra= new JLabel(請輸入對方的19位帳號:);lbltra.setBounds(20, 30, 160, 30);paneltrans.add(lbltra);lbltra仁new JLabel(請?jiān)俅屋斎雽Ψ降?9位帳號:); lbltra1.setBounds(
19、20, 80, 190, 30);paneltrans.add(lbltra1);lbltra2 =n ew JLabel(請輸入您的轉(zhuǎn)賬金額:); lbltra2.setBounds(20, 130, 160, 30);paneltrans.add(lbltra2);3.3.8 通信繳費(fèi)模塊在該模塊中, 用戶可以為手機(jī)進(jìn)行沖值, 要求用戶選則指定的沖值金額, 并 且輸入手機(jī)號碼,點(diǎn)擊確定完成沖值。其方法的具體實(shí)現(xiàn)代碼請參見附錄部分, 部分代碼如下:panelmobile=new JPanel(null); panelmobile.setBackgroundn(ew Color(119,119
20、,253); lblmo= new JLabel(請輸入充值的11位手機(jī)號碼:); panelmobile.add(lblmo);lblmo.setBounds(20, 140, 350, 30);lblmo1 = new JLabel(提示:只接受 30元、50元、100元、200元、500元的 充值 );339咨詢服務(wù)模塊選擇該服務(wù)模塊后,系統(tǒng)會顯示 系統(tǒng)升級中”并提供銀行的人工客服 電話。其方法的具體實(shí)現(xiàn)代碼請參見附錄部分,部分代碼如下:pan elc on sult=new JPa nelfiull);pa nelco nsult.setBackgrou ndfew Color(119
21、,119,253);lblcon=new JLabel(系統(tǒng)升級中咨詢請撥打24小時(shí)客服電話95566); lblc on .setBou nds(80,70,390,30);pan elc on sult.add(lblc on);3.3.10退出操作模塊用戶完成操作后,需要將銀行卡退出。其方法的具體實(shí)現(xiàn)代碼請參見附錄部 分,部分代碼如下:if(e.getSource()=bt ngetcard)JOptionPaneshowMessageDialognull,磁卡已退出,請保管好您的銀行 卡!,退卡成功! , JOptionPaneINFORMATION_MESSAGE);四、系統(tǒng)運(yùn)行結(jié)果
22、及存在問題4.1運(yùn)行結(jié)果運(yùn)行程序進(jìn)入插卡頁面,運(yùn)行效果圖,如圖 2所示:圖2:插卡界面點(diǎn)擊按鈕插卡、繼續(xù)后,進(jìn)入輸入密碼界面,如圖 3所示:圖3:輸入密碼界面退in輸入不正確,則會提醒你密碼不正確,請重新輸入,當(dāng)輸入正確密碼后,點(diǎn)擊確定進(jìn)入系統(tǒng)主界面,運(yùn)行效果圖,如圖4所示:天天就迎使用申園規(guī)石ATM系領(lǐng)諸選揮弦窯蚩的取易莫型啟哉服筠苗Mi削圖4:系統(tǒng)主界面在主界面中包含了 8個(gè)主要功能,只要用戶在該界面中選擇按鈕,它就會彈出各個(gè)相應(yīng)的界面。當(dāng)點(diǎn)擊取款服務(wù)按鈕時(shí)彈出取款界面,運(yùn)行效果圖,如圖5所示:圖5:取款服務(wù)界面運(yùn)行效圖6:修改密碼界面在選擇服務(wù)界面,點(diǎn)擊修改密碼功能按鈕,則會彈出修改密碼
23、界面, 果圖,如圖6所示:在選擇服務(wù)界面,點(diǎn)擊存款服務(wù)功能按鈕,則會彈出存款服務(wù)界面,運(yùn)行效果圖,如圖7所示:SSS3圖7:存款服務(wù)界面取款服務(wù)及存款服務(wù)完成后均可以打印憑條,運(yùn)行效果圖,如圖8所示:圖&打印憑條界面當(dāng)點(diǎn)擊余額查詢界面時(shí)系統(tǒng)會自動幫助你檢索你的當(dāng)前賬戶還有多少錢,并且在查詢完后會自動彈出友好界面, 來顯示你的當(dāng)前余額,余額查詢界面,運(yùn)行 效果圖,如圖9所示:IE卡:600154845235468Z&8 用戶名:天天您的編甌為笛駅5.5尤是倉縫續(xù)蝶作f圖9:余額查詢界面運(yùn)行效在選擇服務(wù)界面,點(diǎn)擊轉(zhuǎn)賬服務(wù)功能按鈕,則會彈出轉(zhuǎn)賬服務(wù)界面, 果圖,如圖10所示:2J456789圖10:
24、轉(zhuǎn)賬服務(wù)界面在選擇服務(wù)界面,點(diǎn)擊通信繳費(fèi)功能按鈕,則會彈出通信繳費(fèi)界面, 果圖,如圖11所示:運(yùn)行效提不:好受河云、&0無1UUJL.J1IW兀的僉値其它充值金驗(yàn)諸嘉欽充值.請讀莽jftf肖金盹:返冋3Q 元 I 50 元 I 1005c I 200 元 I 500 元42546733碩定 /重設(shè)圖11:通信繳費(fèi)界面在選擇服務(wù)界面,點(diǎn)擊咨詢服務(wù)功能按鈕,則會彈出咨詢服務(wù)界面,運(yùn)行效果圖,如圖12所示:系疑井轂中性詢諸撥甘24小時(shí)事臟電他5666圖12:咨詢服務(wù)界面運(yùn)行效在選擇服務(wù)界面,點(diǎn)擊退出操作功能按鈕,則會彈出退出操作界面, 果圖,如圖13所示:您還需要英它交易嗎?取卡圖13:退出操作界面
25、用戶在完成退出操作后進(jìn)行取卡操作, 點(diǎn)擊取卡功能按鈕,則會彈出取卡成 功界面,運(yùn)行效果圖,如圖14所示:圖14:取卡界面4. 2存在問題在此次課程設(shè)計(jì)中,我遇到了一些問題,女口:對于面向?qū)ο蟮姆椒私獠粔?透徹,運(yùn)用到實(shí)際的軟件開發(fā)中存在著困難;對于 Java語言,只學(xué)習(xí)到了一些 最基本的知識,這導(dǎo)致編寫程序時(shí)經(jīng)常出現(xiàn)一些語法錯(cuò)誤, 而且要在短時(shí)間內(nèi)用 Java語言來設(shè)計(jì)一個(gè)具體的系統(tǒng)是一個(gè)較大的挑戰(zhàn);還有對于正規(guī)開發(fā)一個(gè)系統(tǒng) 的流程不熟悉,適應(yīng)起來比較慢,編寫各個(gè)模塊相對應(yīng)的操作時(shí),自己感覺難以 動手,這表明所學(xué)的知識不能靈活運(yùn)用到實(shí)際中。對于以上的問題,自己有清楚的認(rèn)識,解決辦法是需要大量
26、閱讀相關(guān)的書籍, 對于書上以及網(wǎng)站上下載的資料中的 Java實(shí)例必須有清楚的理解,還有就是多 跟精通此方面的老師和同學(xué)交流,取其精華。對于實(shí)際動手能力與系統(tǒng)開發(fā)的流 程的適應(yīng),必須多進(jìn)行實(shí)際的練習(xí)與操作,才能有大的進(jìn)步。五、設(shè)計(jì)體會通過這次課程設(shè)計(jì),使我更加熟悉的掌握了軟件開發(fā)知識的運(yùn)用。 幫助我們 熟悉了更多軟件開發(fā)語言的功能,提高了我們的動手能力。在這次的課程設(shè)計(jì)中, 主要是運(yùn)用JAVA語言來編寫一個(gè)小的應(yīng)用程序,當(dāng)然還可以用其他的技術(shù)來輔 助了。在這個(gè)小應(yīng)用程序當(dāng)中,我用了 Java外還用了 Swing控件。輸入輸出流 等技術(shù)。由于以前學(xué)的不是很扎實(shí),而且還有些知識我們都是沒有學(xué)過的,
27、這就 要求我們?nèi)ゲ橄嚓P(guān)的書籍,還有就是和同學(xué)之間的交流。正因?yàn)檫@樣,才鍛煉了 我的自學(xué)的能力,還有就是加深了我對各個(gè)知識點(diǎn)的認(rèn)識, 并且提高了我對專業(yè) 的學(xué)習(xí)的興趣,為我以后的學(xué)習(xí)打下了基礎(chǔ)。 通過這次課程設(shè)計(jì),使我更加熟悉 的掌握了軟件開發(fā)知識的運(yùn)用。幫助我們熟悉了更多軟件開發(fā)語言的功能,提高了我們的動手能力。六、源程序import java.awt.*;import java.awt.event.*;import javax.swing.*;public class MyATM extends JFrame implements ActionListenerJPanelpanelfirst
28、,panelmain,panel3,panel4,panel5,panel6,panel7,panelchangepwd,panelchangepwded,pan elsave,panelsaved,panelremain,paneltrans,paneltransed,panelmobile,panelmobiled,panelconsult;JButton btn0,btn1,btn2,btn3,btn4,btn5,btn6,btn7,btn8,btn9,btn10,btnsure,btnback,btnok,btncard,btngetcard ,btnincard;JButton bt
29、n00,btn01,btn02,btn03,btn04,btn05,btn06,btn07,btn08,btn09,btn010,btnback1,btnremain,btnrem ain1,btnremain2;JButton btn000,btn001,btn002,btn003,btn004,btn005,btn006,btn007,btn008,btn009,btn100,btn200,btn300, btn1000,btn500,btnsure1,btnback2,btn0010,btnquok1,btnquok2,btnquok3,btnquok4;JButton btnpwd,b
30、tnpwd1,btnpwd2,btnpwd3,btnpwd4,btn11,btn12,btn13,btn14,btn15,btn16,btn17,btn18,bt n19,btn20,btnsave,btnsave1,btnsave2,btnsaved,btnsaved1,btnsaved2,btnsaved3;JButton btntra,btntra1,btntra2,btntraed,btntraed1,btn21,btn22,btn23,btn24,btn25,btn26,btn27,btn28,btn29,b tn30,btncon,btncon1;JButton btnmo,btn
31、mo1,btnmo2,btnmo30,btnmo50,btnmo100,btnmo200,btnmo500,btnmo10,btnmo11,btn mo12,btnmo13,btnmo14,btnmo15,btnmo16,btnmo17,btnmo18,btnmo19,btnmoed,btnmoed1;JTextField txt2,txttrans,txttrans1,txttrans2,txtmo,txtmo1;JLabel lbljixu,lblpwd,lblwrong,lblqukuan,lblquok1,lblquok2,lblpwd1,lblpwd2,lblpwd3,lblpwd4
32、,lblsave,l blsave1,lblsaved,lblremain,lblremain1,lbltra,lbltra1,lbltra2,lbltraed,lbltraed1;JLabel lblwel,lblwel1,lblmo,lblmo1,lblmo2,lblmo3,lblmoed,lblmoed1,lblcon,lblcon1;JPasswordField txt1,txtpwd,txtpwd1;Container container;CardLayout Layout;int money,savemoney,mobilemoney=0;double lastmoney,trai
33、nsmoney;String userpwd,cardnum,trains,username;boolean flag=true,flag1=false,flag2=false,flag3=true,flag4=false,flag5=false;/構(gòu)造方法 public MyATM()super(”中國銀行”);this.setSize(435,350);this.setLocation(500, 250); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE );/設(shè)置不可改變窗口大小this.setResizable(false);/設(shè)置
34、程序小圖標(biāo) this.setIconImage(this.getToolkit().getImage(imageshaizei.jpg);/布局public void setLayout()/用卡片布局Layout=new CardLayout();container=getContentPane();container.setLayout(Layout);/添加第一張卡片panelfirst=new JPanel(null);/設(shè)置卡片的背景顏色 panelfirst.setBackground(new Color(119,119,253); lbljixu=new JLabel( 請放入磁
35、卡 ,然后繼續(xù)操作 );設(shè)置卡片在Panel中的位置lbljixu.setBounds(140,90,350,30); /為第一張卡片添加一個(gè) Labelpanelfirst.add(lbljixu);/為第一張卡片添加一個(gè)按鈕btncard=new JButton( 繼續(xù)); btncard.setBounds(310,180,80,30);/為按鈕注冊事件監(jiān)聽器 btncard.addActionListener(this);/開始時(shí)設(shè)置按鈕不可按btncard.setEnabled(false); panelfirst.add(btncard);/為第一張卡片添加一個(gè)按鈕btngetca
36、rd=new JButton( 取卡 );btngetcard.setEnabled(false);btngetcard.setBounds(310,220,80,30); btngetcard.addActionListener(this); panelfirst.add(btngetcard);/為第一張卡片添加一個(gè)按鈕 btnincard=new JButton( 插卡 ); btnincard.setBounds(40,220,80,30); btnincard.addActionListener(this); panelfirst.add(btnincard);container.a
37、dd(panelfirst,first);/添加登錄輸入密碼卡片 panelmain=new JPanel(null);panelmain.setBackground(new Color(119,119,253); lblpwd=new JLabel( 請輸入您的銀行卡密碼: ); panelmain.add(lblpwd);lblpwd.setBounds(150, 20, 150, 30);/設(shè)置文本框?yàn)槊艽a型txt1=new JPasswordField(12); /文本框不可選中 txt1.enable(false);panelmain.add(txt1);/文本框的輸入內(nèi)容用 * 顯
38、示 txt1.setEchoChar(*); txt1.setBounds(115,50,200,30);/添加選擇按鈕btnsure=new JButton( 確定 ); btnsure.addActionListener(this); panelmain.add(btnsure); btnsure.setBounds(70,160,80,30);/添加重輸按鈕btn010=new JButton( 重輸 ); btn010.addActionListener(this); panelmain.add(btn010); btn010.setBounds(175,160,80,30);btnb
39、ack=new JButton( 退出 ); btnback.addActionListener(this); panelmain.add(btnback); btnback.setBounds(280,160,80,30);lblwrong=new JLabel( 請注意保護(hù)好您的密碼! ); panelmain.add(lblwrong);lblwrong.setBounds(150,90,200,30);/添加輸入按鈕btn01=new JButton(1); btn01.addActionListener(this); panelmain.add(btn01); btn01.setBo
40、unds(45,210,60,30);btn02=new JButton(2);btn02.addActionListener(this);panelmain.add(btn02); btn02.setBounds(115,210,60,30);btn03=new JButton(3);btn03.addActionListener(this);panelmain.add(btn03); btn03.setBounds(185,210,60,30);btn04=new JButton(4);btn04.addActionListener(this);panelmain.add(btn04);
41、btn04.setBounds(255,210,60,30);btn05=new JButton(5);btn05.addActionListener(this);panelmain.add(btn05); btn05.setBounds(325,210,60,30);btn06=new JButton(6);btn06.addActionListener(this);panelmain.add(btn06); btn06.setBounds(45,260,60,30);btn07=new JButton(7);btn07.addActionListener(this);panelmain.a
42、dd(btn07); btn07.setBounds(115,260,60,30); container.add(panelmain,main);btn08=new JButton(8);btn08.addActionListener(this);panelmain.add(btn08);btn08.setBounds(185,260,60,30);btn09=new JButton(9);btn09.addActionListener(this);panelmain.add(btn09); btn09.setBounds(255,260,60,30);btn00=new JButton(0)
43、; btn00.addActionListener(this);panelmain.add(btn00); btn00.setBounds(325,260,60,30);/添加主界面卡片 panel3=new JPanel(null);panel3.setBackground(new Color(119,119,253);lblwel=new JLabel(username+, 歡迎使用中國銀行 ATM 系統(tǒng) ); lblwel.setBounds(20,15,350,30);panel3.add(lblwel);lblwel1=new JLabel( 請選擇您需要的交易類型 ); lblwe
44、l1.setBounds(220,55,350,30);panel3.add(lblwel1);btn3=new JButton( 取款服務(wù) ); btn3.addActionListener(this); btn3.setBounds(20,90,100,30);panel3.add(btn3);btn4=new JButton( 修改密碼 ); btn4.addActionListener(this); btn4.setBounds(20,150,100,30);panel3.add(btn4);btn5=new JButton( 存款服務(wù) ); btn5.addActionListene
45、r(this); btn5.setBounds(20,210,100,30);panel3.add(btn5);btn6=new JButton( 查詢余額 ); btn6.addActionListener(this); btn6.setBounds(20,270,100,30);panel3.add(btn6);btn7=new JButton( 轉(zhuǎn)賬服務(wù) ); btn7.addActionListener(this); btn7.setBounds(300,90,100,30);panel3.add(btn7);btn8=new JButton( 通信交費(fèi) );btn8.addActio
46、nListener(this); btn8.setBounds(300,150,100,30);panel3.add(btn8);btn9=new JButton( 咨詢服務(wù) );btn9.addActionListener(this); btn9.setBounds(300,210,100,30);panel3.add(btn9);btn10=new JButton( 退出操作 ); btn10.addActionListener(this); btn10.setBounds(300,270,100,30);panel3.add(btn10);container.add(panel3,thr
47、ee);/添加取款頁面卡片 panel4=new JPanel(null);panel4.setBackground(new Color(119,119,253); lblqukuan=new JLabel( 請輸入您的取款數(shù): ); panel4.add(lblqukuan);lblqukuan.setBounds(115, 20, 150, 30);lblqukuan=new JLabel( 提示:只能是 100 元或 100 元的整數(shù)倍。 ); panel4.add(lblqukuan);lblqukuan.setBounds(115, 50, 300, 30);txt2=new JTe
48、xtField(12);txt2.enable(false); panel4.add(txt2);txt2.setBounds(115,90,200,30);btn100=new JButton(100); panel4.add(btn100);btn100.addActionListener(this); btn100.setBounds(45,190,60,30);btn200=new JButton(200); panel4.add(btn200);btn200.addActionListener(this); btn200.setBounds(115,190,60,30);btn300
49、=new JButton(300);panel4.add(btn300);btn300.addActionListener(this); btn300.setBounds(185,190,60,30);btn500=new JButton(500);panel4.add(btn500);btn500.addActionListener(this); btn500.setBounds(255,190,60,30);btn1000=new JButton(1000);panel4.add(btn1000);btn1000.addActionListener(this); btn1000.setBo
50、unds(325,190,65,30);btn001=new JButton(1);panel4.add(btn001); btn001.addActionListener(this); btn001.setBounds(45,230,60,30);btn002=new JButton(2);panel4.add(btn002);btn002.addActionListener(this); btn002.setBounds(115,230,60,30);btn003=new JButton(3);panel4.add(btn003);btn003.addActionListener(this
51、); btn003.setBounds(185,230,60,30);btn004=new JButton(4);panel4.add(btn004);btn004.addActionListener(this); btn004.setBounds(255,230,60,30);btn005=new JButton(5);panel4.add(btn005);btn005.addActionListener(this); btn005.setBounds(325,230,65,30);btn006=new JButton(6);panel4.add(btn006);btn006.addActi
52、onListener(this);btn006.setBounds(45,270,60,30);btn007=new JButton(7);panel4.add(btn007);btn007.addActionListener(this);btn007.setBounds(115,270,60,30);btn008=new JButton(8);panel4.add(btn008); btn008.addActionListener(this);btn008.setBounds(185,270,60,30);btn009=new JButton(9);panel4.add(btn009); b
53、tn009.addActionListener(this);btn009.setBounds(255,270,60,30);btn000=new JButton(0);panel4.add(btn000); btn000.addActionListener(this);btn000.setBounds(325,270,65,30);btnsure1=new JButton( 確定 );panel4.add(btnsure1);btnsure1.addActionListener(this);btnsure1.setBounds(70,140,80,30);btn0010=new JButton
54、( 重輸 );panel4.add(btn0010);btn0010.addActionListener(this);btn0010.setBounds(175,140,80,30);btnback2=new JButton( 返回 );panel4.add(btnback2);btnback2.addActionListener(this);btnback2.setBounds(280,140,80,30);container.add(panel4,four);/添加完成取款操作需要顯示的卡片panel5=new JPanel(null);panel5.setBackground(new C
55、olor(119,119,253);lblquok1=new JLabel( 取款成功,你本次取款數(shù)額為 +txt2.getText()+, 是否繼續(xù)操作? );lblquok1.setBounds(60, 110, 350, 30);btnquok1=new JButton( 繼續(xù)取款 );panel5.add(btnquok1);btnquok1.addActionListener(this);btnquok1.setBounds(30, 185, 90, 30);panel5.add(lblquok1);btnquok2=new JButton( 打印憑條 ); panel5.add(btnquok2);btnquok2.addActionListener(this); btnquok2.setBounds(30, 240, 90, 30);btnquok3=new JButton( 其它操作 );panel5.add(btnquok3); btnquok3.addActionListener(this);btnquok3.setB
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版八年級物理上冊《3.1溫度》同步測試題及答案
- 煤礦開采區(qū)域地下水污染防治技術(shù)路徑
- 2024屆四川省成都龍泉中學(xué)高考化學(xué)三模試卷含解析
- 2024高中地理第二章自然環(huán)境中的物質(zhì)運(yùn)動和能量交換2-1不斷變化的地表形態(tài)內(nèi)力作用與地表形態(tài)學(xué)案湘教版必修1
- 2024高中生物專題2微生物的培養(yǎng)與應(yīng)用課題3分解纖維素的微生物的分離課堂演練含解析新人教版選修1
- 2024高中語文第三單元因聲求氣吟詠詩韻自主賞析蘇幕遮學(xué)案新人教版選修中國古代詩歌散文欣賞
- 2024高考地理一輪復(fù)習(xí)第四章地表形態(tài)的塑造第一講營造地表形態(tài)的力量學(xué)案
- 2024高考化學(xué)一輪復(fù)習(xí)第3章自然界及材料家族中的元素第4講海水中的化學(xué)元素學(xué)案魯科版
- 2024高考化學(xué)二輪復(fù)習(xí)示范卷5含解析
- 2024高考地理一輪復(fù)習(xí)四地理計(jì)算專練含解析
- 服務(wù)方案進(jìn)度計(jì)劃質(zhì)量保障措施
- 博物館展覽活動應(yīng)急預(yù)案
- 2025年包鋼(集團(tuán))公司招聘筆試參考題庫含答案解析
- DB32-T 4596-2023 公眾移動通信橋梁和隧道覆蓋工程技術(shù)規(guī)范
- 侘寂風(fēng)的色彩搭配藝術(shù)
- 廣西南寧市2023-2024學(xué)年七年級上學(xué)期期末數(shù)學(xué)試卷
- 2024年質(zhì)量工作總結(jié)(3篇)
- 一年級數(shù)學(xué)口算大全(共1500題)
- 保險(xiǎn)合作框架協(xié)議模板
- 高??蒲许?xiàng)目獎金分配管理規(guī)定
- 2024房地產(chǎn)抵押反擔(dān)保合同范本
評論
0/150
提交評論