版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、河南經(jīng)貿(mào)職業(yè)學(xué)院信息管理系java程序設(shè)計(jì)課程設(shè)計(jì)報告java語言程序設(shè)計(jì)課程設(shè)計(jì)報告題 目: atm機(jī) 班 級: 10信息一班 系 部: 信息管理系 專 業(yè): 計(jì)算機(jī)應(yīng)用技術(shù) 2011年 6 月 25 日atm機(jī)設(shè)計(jì)報告目錄1 概述21.1 問題分析21.2功能22 總體設(shè)計(jì)33 詳細(xì)設(shè)計(jì)31.登錄界面client()類結(jié)構(gòu)介紹:32.卡號生成界面atmdemo()類結(jié)構(gòu)介紹:33.功能界面main()類結(jié)構(gòu)介紹:44.存款的界面keepmoney()和取款的界面getmoney()結(jié)構(gòu)介紹:45.修改密碼界面change()類結(jié)構(gòu)介紹:57.查詢余額界面yuxia.java()類結(jié)構(gòu)介紹:
2、54 實(shí)現(xiàn)51.運(yùn)行環(huán)境52.運(yùn)行情況抓圖55 總結(jié)與體會66 參考文獻(xiàn)77 附錄: 程序清單71 概述1.1 問題分析模擬atm機(jī)基本操作功能:存款、取款、余額查詢、修改密碼等;初始賬戶10000元;修改密碼時必須修改兩次,確認(rèn)后才可使用;取款的款項(xiàng)和存款的款項(xiàng)必須是100的整倍數(shù);1.2功能1)模擬atm機(jī)實(shí)現(xiàn)當(dāng)用戶進(jìn)入登陸頁面后,用戶需先點(diǎn)擊銀行開戶按鈕進(jìn)行銀行開戶;2)進(jìn)入銀行開戶頁面之后,進(jìn)行填寫客戶信息,系統(tǒng)會自動生成卡號,信息填寫完整后系統(tǒng)會自動保存用戶信息在生成的文件中,并返回登陸頁面進(jìn)行登錄。3)登陸成功之后進(jìn)入atm機(jī)操作頁面進(jìn)行存款、取款、余額查詢、修改密碼,點(diǎn)擊一個按鈕
3、都會顯示出對應(yīng)的頁面。2 總體設(shè)計(jì)1、client()類第一個登陸頁面主要包括:登陸賬號按鈕、銀行開戶按鈕、重新登錄按鈕、退出系統(tǒng)按鈕;2、atmdemo()類第二個登陸頁面主要進(jìn)行用戶資料填寫主要包括:卡號、密碼、確認(rèn)密碼、用戶名、性別、存款金額標(biāo)簽;生成卡號、確認(rèn)開戶、取消開戶按鈕;3、main()類第二個登陸頁面主要設(shè)置安放按鈕,主要包括:取款、存款、修改密碼、查詢余額、退出該界面按鈕并對所有按鈕進(jìn)行監(jiān)聽;4、getmoney()類第三個登陸頁面主要進(jìn)行取款設(shè)置主要包括:提款金額數(shù)目的數(shù)字按鈕,當(dāng)點(diǎn)擊相應(yīng)的按鈕時,提取金額框內(nèi)顯示相應(yīng)的取款金額;當(dāng)提款的金額超出卡內(nèi)總金額時,取款失??;5
4、、keepmoney()類第四個登陸頁面主要進(jìn)行存款設(shè)置主要包括:存款金額數(shù)目的數(shù)字按鈕,當(dāng)點(diǎn)擊相應(yīng)的按鈕時,存款金額框內(nèi)顯示相應(yīng)的存款金額;6、change()類第五個登陸頁面主要進(jìn)行密碼修改的設(shè)置主要包括:設(shè)置“確認(rèn)”“取消”“返回主頁面”三個按鈕;兩次輸入新的密碼,當(dāng)兩次密碼相同時點(diǎn)擊“確認(rèn)”按鈕修改密碼成功,第二次進(jìn)行賬戶登錄時使用修改后的密碼7、yuxia()類第六個登陸頁面主要進(jìn)行余額查詢的設(shè)置主要包括:當(dāng)點(diǎn)擊“查看余額”按鈕時查看存款、取款后卡內(nèi)的總金額,顯示在文本框內(nèi);當(dāng)點(diǎn)擊“返回主頁面”時返回main頁面;8、account()類主要保存文件的卡號,密碼和賬戶金額,對進(jìn)行數(shù)據(jù)
5、信息在不同的類內(nèi)調(diào)用傳遞;3 詳細(xì)設(shè)計(jì)1.登錄界面client()類結(jié)構(gòu)介紹:主要包括:三個標(biāo)簽:“歡迎登錄atm機(jī)”,“卡號”,“密碼”兩個文本框:jtextfield和jpasswordfield四個按鈕:“登陸賬號”,“銀行開戶”,“重新登錄”,“退出系統(tǒng)”對頁面使用了空布局。對文本框進(jìn)行監(jiān)聽,設(shè)置卡號只能為數(shù)字,且只能輸入8位。設(shè)置密碼框不為空。給四個按鈕創(chuàng)建監(jiān)聽actionlistener,四個按鈕實(shí)現(xiàn)的功能:登陸賬號:第一次進(jìn)入登錄界面時,當(dāng)點(diǎn)擊“登錄賬戶”彈出對話框:“請進(jìn)行銀行開戶”。重新登錄: 當(dāng)點(diǎn)擊“重新登錄”按鈕,用settext(“”)把文本框和密碼框?yàn)榭铡?銀行開戶:
6、 當(dāng)點(diǎn)擊“銀行開戶”按鈕時,界面跳到銀行開戶的界面里。 退出系統(tǒng):當(dāng)點(diǎn)擊“退出系統(tǒng)”時,彈出對話框“確定要退出atm系統(tǒng)?”點(diǎn)擊是,退出系統(tǒng),點(diǎn)擊否,留在該界面。當(dāng)銀行開戶成功后,再次輸入卡號和密碼,如果其中一個或全部錯誤,彈出對話框:“請核對你的卡號和密碼,重新登錄”,并不設(shè)置文本框?yàn)榭铡?.卡號生成界面atmdemo()類結(jié)果介紹:繼承jframe創(chuàng)建銀行卡號開戶窗體,創(chuàng)建監(jiān)聽;應(yīng)用空布局設(shè)置jlabel標(biāo)簽,jtextfield, jpasswordfield,jbutton,jcombobox復(fù)選按鈕框在窗體中的位置當(dāng)點(diǎn)擊“生成卡號”按鈕時系統(tǒng)會自動生成卡號( inti=(int)(m
7、ath.random()*100000000);)對生成的卡號進(jìn)行數(shù)據(jù)保存(account)由account傳遞到登陸頁面,讓生成的卡號與登陸的卡號相同在登錄頁面進(jìn)行登錄操作;設(shè)置密碼與確認(rèn)密碼框中的內(nèi)容相等,如果不相同提示(“joptionpane.showconfirmdialog(this,"兩次填寫密碼不同,請重新輸入正確的密碼!","提示",joptionpane.ok_cancel_option );”),對生成的密碼進(jìn)行數(shù)據(jù)保存(account)讓后傳遞到atmclient頁面進(jìn)行密碼連接;設(shè)置存款金額框存款金額為100的整倍數(shù);當(dāng)點(diǎn)擊“取
8、消開戶”按鈕時,所有文本框內(nèi)容為空;當(dāng)點(diǎn)擊“確認(rèn)開戶”按鈕時,如果資料填寫不完整,系統(tǒng)進(jìn)行提示(elseif(jtf1.gettext().equals("")|jtf2.gettext().equals("")|jtf3.gettext().equals("")|s3.equals("")|s2.equals("") joptionpane.showmessagedialog(this,"開戶失敗,資料沒填寫完整!");)反之,頁面轉(zhuǎn)到登陸頁面;3.功能界面main()類結(jié)
9、構(gòu)介紹:主要包括:一個標(biāo)簽:“荷塘月色atm機(jī)正在為您服務(wù)”五個按鈕:“取款”、“存款”、“查詢余額”、“修改密碼”、“退出該界面”對頁面使用了空布局。對前四個按鈕進(jìn)行監(jiān)聽,當(dāng)點(diǎn)擊其中任一個按鈕時,進(jìn)入到該按鈕實(shí)現(xiàn)功能的界面里,當(dāng)點(diǎn)擊“退出該界面”,彈出對話框“確定返回登錄面?” 點(diǎn)擊是,退出該界面,點(diǎn)擊否,留在該界面。4.存款的界面keepmoney()和取款的界面getmoney()結(jié)構(gòu)介紹:主要包括:十個按鈕:七個固定存取款錢數(shù)的按鈕和一個“自定義”(存取款的錢數(shù))按鈕,還有“確定”按鈕和“返回主頁面”的按鈕。一個標(biāo)簽:“您提?。ù嫒耄┑慕痤~數(shù):一個文本框;對頁面使用了空布局。給八個存取
10、款的按鈕進(jìn)行監(jiān)聽。實(shí)現(xiàn)的功能:當(dāng)點(diǎn)擊七個固定存取款的按鈕時,按鈕上的錢數(shù)顯示在文本框中,當(dāng)點(diǎn)擊自定義按鈕時,可以在文本框中手動輸入錢數(shù)。當(dāng)點(diǎn)擊“返回主頁面”按鈕時,結(jié)束該界面的操作,返回main頁面里。文本框: 文本框設(shè)置為不可編輯。當(dāng)點(diǎn)擊存取款按鈕時,錢數(shù)顯示在文本框中,但不能手動修改文本框中的內(nèi)容。當(dāng)點(diǎn)擊自定義按鈕時,文本框可以手動輸入,文本框中輸入的存取款的錢數(shù)必須是100的倍數(shù),最少為100,最多為5000元,否則彈出對話框進(jìn)行提醒,存取錢不成功。 自定義一個監(jiān)聽類,對文本框進(jìn)行監(jiān)聽,自定義輸入錢數(shù)時,文本框中只能輸入數(shù)字,且最多可輸入四位數(shù)。當(dāng)文本框?yàn)榭諘r,點(diǎn)擊“確定”按鈕,彈出對話
11、框:“請輸入存(?。┛罱痤~”。在存款keepmoney.java界面時,當(dāng)點(diǎn)擊“確定”按鈕,彈出對話框“您已存款*元,余額為*元”。在取款getmoney.java界面時,當(dāng)點(diǎn)擊“確定”按鈕時,如果賬戶金額大于或等于提取金額時,彈出對話框“您已取款*元,余額為*元”。如果賬戶金額小于提取金額時,彈出對話框“余額不足,取錢失敗”,并獲取余額數(shù),停止金額的運(yùn)算。以防止取款不成功,但已透支的現(xiàn)象。5. 修改密碼界面change()類結(jié)構(gòu)介紹:繼承jframe創(chuàng)建修改密碼窗體,設(shè)置窗體的空布局;對確認(rèn)密碼框進(jìn)行監(jiān)聽和數(shù)據(jù)傳遞保存(account.setpwd(s2);)傳遞到client()類內(nèi);當(dāng)兩
12、次輸入密碼相同時點(diǎn)擊“確認(rèn)”按鈕密碼修改成功,下次登錄使用新密碼進(jìn)行登錄。;點(diǎn)擊“取消”按鈕文本框內(nèi)容消失為空;點(diǎn)擊“返回主頁面”按鈕返回至main()(else if(e.getsource()=jb3)new main();this.setvisible(false););6.查詢余額界面yuxia.java()類結(jié)構(gòu)介紹:創(chuàng)建查詢余額窗體,應(yīng)用空布局設(shè)置布局;對按鈕創(chuàng)建監(jiān)聽(addactionlistener) 當(dāng)點(diǎn)擊“查看余額”按鈕時顯示卡內(nèi)當(dāng)前的余額(運(yùn)用account類進(jìn)行數(shù)據(jù)傳遞實(shí)現(xiàn)(jtf1.settext(account.getcountmoney()+""
13、;);)4 實(shí)現(xiàn)1. 運(yùn)行環(huán)境 myeclipse6.52. 運(yùn)行情況抓圖 1 2 3 4 75 總結(jié)與體會此次實(shí)訓(xùn)基本把我們本學(xué)期所學(xué)的內(nèi)容進(jìn)行綜合應(yīng)用,讓我們更加容易簡單的了解體驗(yàn)到了未來工作的一般狀況,鍛煉了我們的實(shí)際操作能力,同時也在一定程度上增加了同學(xué)們對java語言學(xué)習(xí)的信心,一些簡單的小游戲,通過運(yùn)用自己所學(xué)也是可以實(shí)現(xiàn)的,讓我們不在對編程感覺那么神秘。團(tuán)隊(duì)合作與交流很重要,“團(tuán)結(jié)就是力量”在本次項(xiàng)目開發(fā)中真的體會得到,在做項(xiàng)目時,小組成員要知道本小組所做項(xiàng)目的基本構(gòu)想框架,要做什么、實(shí)現(xiàn)什么。如果有自己的想法就要和自己的伙伴進(jìn)行交流。6 參考文獻(xiàn)【1】魏艷銘,java程序設(shè)計(jì),
14、河南經(jīng)貿(mào)職業(yè)學(xué)院:atm機(jī)視頻提示,2011.6【2】網(wǎng)絡(luò)資源:/【3】java程序設(shè)計(jì)精講,北京:清華大學(xué)出版社,2010.97 附錄:程序清單1.client.java/atm機(jī)的登錄界面package client;import javax.swing.*;import client.getmoney.mykeylistener;import java.awt.*;import java.awt.event.*;import .url;public class client extends jframe implements actionlisten
15、erjlabel jl1,jl2,jl3;jlabel jl;/添加圖片的標(biāo)簽jtextfield jtf;jpasswordfield jpf;jbutton jb1,jb2,jb3,jb4; static account account;public client(account account)super("atm-client");this.account=account;setlayout(null);jl1=new jlabel("歡迎進(jìn)入“荷塘月色atm 機(jī)”");font f=new font("華文新魏",font.
16、bold,24);jl1.setforeground(color.blue);jl1.setfont(f);jl2=new jlabel("卡號:");jl3=new jlabel("密碼:");jtf=new jtextfield(8);jtf.addkeylistener(new mykeylistener(jtf);jpf=new jpasswordfield();jb1=new jbutton("登陸賬號");jb1.addactionlistener(this);jb2=new jbutton("銀行開戶"
17、;);jb2.addactionlistener(this);jb3=new jbutton("重新登錄");jb3.addactionlistener(this);jb4=new jbutton("退出系統(tǒng)");jb4.addactionlistener(this); /添加圖片 jl= new jlabel(); url resource = this.getclass().getresource("/images/6.jpg"); imageicon bgimage=new imageicon(resource); /創(chuàng)建圖標(biāo)
18、jl.seticon(bgimage); jl.setbounds(0,0,400,400);jl1.setbounds(25, 40, 400, 40);jl2.setbounds(50, 85, 60, 40);jl3.setbounds(50, 150, 60, 40);jtf.setbounds(120, 90,150, 30);jpf.setbounds(120, 155,150,30);jb1.setbounds(0, 250, 90, 30);jb2.setbounds(100, 250, 90,30 );jb3.setbounds(200, 250, 90,30 );jb4.s
19、etbounds(300, 250, 90, 30);this.add(jl1);this.add(jl2);this.add(jtf); this.add(jl3);this.add(jpf);this.add(jb1);this.add(jb2);this.add(jb3);this.add(jb4);this.add(jl);this.setsize(400,400);this.setdefaultcloseoperation(jframe.exit_on_close);this.setvisible(true);public static void main(string args)
20、new client(account);public void actionperformed(actionevent e) if(e.getsource()=jb1)string s1=jtf.gettext();string s2=new string(jpf.getpassword();if(account!=null)if(s1.equals(account.ip)&&s2.equals(account.pwd)new main(account);this.setvisible(false);elsejoptionpane.showmessagedialog(this,
21、"請核對您的卡號和密碼,重新登錄");else if(account=null)joptionpane.showmessagedialog(this, "請進(jìn)行銀行開戶");else if(e.getsource()=jb2)/連接到的atmdemo.javanew atmdemo();this.setvisible(false);else if(e.getsource()=jb3)jtf.settext("");jpf.settext("");else if(e.getsource()=jb4)/設(shè)置jb4退出系
22、統(tǒng) int i=joptionpane.showconfirmdialog(this,"您確定要退出atm機(jī)系統(tǒng)?","提示",joptionpane.yes_no_option);if(i=1)return;system.exit(0);/創(chuàng)建jtf的監(jiān)聽,使jtf只能輸入8個數(shù)字,且只能輸入數(shù)字class mykeylistener extends keyadapterprivate jtextfield jtf;private int length;public mykeylistener(jtextfield jtf)this.jtf = jtf
23、;this.length = 8;public mykeylistener(jtextfield jtf,int length)this.jtf = jtf;this.length = length;public void keytyped(keyevent e)boolean b = character.tostring(e.getkeychar().matches("d");if(!b | jtf.gettext().length() = length)e.consume(); 2.atmdemo.java/atm卡號生成頁面 package client;import
24、 java.awt.*;import java.awt.event.*;import java.io.*;import .socket;import java.util.calendar;import .url;import javax.swing.*;public class atmdemo extends jframe implements actionlistener jlabel jl1,jl2,jl3,jl4,jl5,jl6,jl7,jl8; jtextfield jtf1,jtf2,jtf3; jpasswordfield jpf1,jpf2; jbutton jb1,jb2,jb
25、3; jcombobox jcb; bufferedreader br; jlabel msg; account account; int totalmoney=10000; int money; public atmdemo() super("銀行卡號開戶"); this.setlayout(null); jl1=new jlabel("卡號開戶"); jl2=new jlabel("卡號:"); jl3=new jlabel("密碼 :"); jl4=new jlabel("確認(rèn)密碼 :")
26、; jl5=new jlabel("用戶名:"); jl6=new jlabel("性別:"); jcb = new jcombobox(); jcb.additem("男"); jcb.additem("女"); jl7=new jlabel("存款金額:"); jb1=new jbutton("生成卡號"); jb2=new jbutton("確認(rèn)開戶"); jb3=new jbutton("取消開戶"); jtf1=new jte
27、xtfield(16); jtf1.seteditable(false);/設(shè)置文本框不可見 jtf2=new jtextfield(4); jtf3=new jtextfield(); jpf1=new jpasswordfield(6); jpf2=new jpasswordfield(6); msg=new jlabel(""); msg.setforeground(color.red); /監(jiān)聽 jb1.addactionlistener(this); jb2.addactionlistener(this); jb3.addactionlistener(this);
28、 jtf3.addkeylistener(new mykeylistener(jtf3); jl1.setforeground(color.red); jl1.setfont(new font("宋體", font.plain, 40); /添加圖片 jl8= new jlabel(); url resource = this.getclass().getresource("/images/8.jpg"); imageicon bgimage=new imageicon(resource); /創(chuàng)建圖標(biāo) jl8.seticon(bgimage); jl8
29、.setbounds(0,0,400,400); jl1.setbounds(105, 10, 225, 41);/卡號開戶 jl2.setbounds(40, 60, 81, 18);/卡號 jb1.setbounds(297, 60, 91, 18);/生成卡號 jl3.setbounds(40, 90, 81, 18);/密碼 jl4.setbounds(40, 120, 81, 18);/確認(rèn)密碼 jl5.setbounds(40, 150, 81, 18);/用戶名 jl6.setbounds(40, 180, 81, 15);/性別 jcb.setbounds(100, 180,
30、110, 18);/復(fù)選按鈕 jl7.setbounds(40, 210, 81, 15);/存款金額 jtf1.setbounds(100, 60, 190, 18);/卡號框 jpf1.setbounds(100, 90, 170, 18);/密碼框 jpf2.setbounds(100, 120, 150, 18);/確認(rèn)密碼框 jtf2.setbounds(100, 150, 130, 18);/用戶名框 jtf3.setbounds(100, 210, 90, 18);/存款金額框 jb2.setbounds(80, 300,100, 25);/確認(rèn)開戶 jb3.setbounds(
31、230, 300, 100, 25);/取消開戶 msg.setbounds(150,260,270,60); add(jb1); add(jb2); add(jb3); add(jcb); add(jl1); add(jl2); add(jl3); add(jl4); add(jl5); add(jl6); add(jl7); add(jpf1); add(jpf2); add(jtf1); add(jtf2); add(jtf3); add(msg); add(jl8); this.setsize(400,400); this.setdefaultcloseoperation(jframe
32、.exit_on_close); this.setvisible(true); public static void main(string args) new atmdemo(); public void actionperformed(actionevent e) string id1=jtf1.gettext();/卡號string s1=new string(jpf2.getpassword();/確認(rèn)密碼int mone=money;/生成的金額數(shù)account=new account(id1,s1,mone);/把生成的卡號、確認(rèn)密碼、生成金額數(shù)保存在account類內(nèi)try/創(chuàng)建
33、文件 file f=new file("message.txt"); if(e.getsource()=jb1)/生成卡號jtf1.seteditable(true); int i=(int)(math.random()*100000000); jtf1.settext(integer.tostring(i); jtf1.seteditable(false); msg.settext("");/消失信息提示 joptionpane.showmessagedialog(this,"卡號已生成,請記住卡號,以便登陸!"); else if
34、(e.getsource()=jb2) /確定開戶string s3=new string(jpf1.getpassword();string s2=new string(jpf2.getpassword();if(!s3.equals(s2)joptionpane.showconfirmdialog(this,"兩次填寫密碼不同,請重新輸入正確的密碼!","提示",joptionpane.ok_cancel_option );jpf2.settext(null); return;else if(jtf1.gettext().equals("&
35、quot;)|jtf2.gettext().equals("")|jtf3.gettext().equals("")|s3.equals("")|s2.equals("") joptionpane.showmessagedialog(this,"開戶失敗,資料沒填寫完整!"); else if(integer.parseint(jtf3.gettext()%100!=0) joptionpane.showmessagedialog(this,"存款金額必須是100的倍數(shù)!")
36、; jtf3.settext(""); else if(!jtf1.gettext().equals("")&&!jtf2.gettext().equals("")&&!jtf3.gettext().equals("")&&!s3.equals("")&&!s2.equals("") money=totalmoney+(integer.parseint(jtf3.gettext(); joptionpane.sh
37、owmessagedialog(this,"您已開戶成功,卡內(nèi)金額為:"+money); account.setcountmoney(totalmoney+(integer.parseint(jtf3.gettext();new client(account);this.setvisible(false); /寫入客戶信息保存在message.txt中try filewriter fw = new filewriter(f); bufferedwriter bw=new bufferedwriter(fw); string s = "卡號:"+jtf1.
38、gettext()+"t"+"用戶名:"+jtf2.gettext()+"t" +"密碼:"+account.getpwd(); bw.write(s); bw.newline(); bw.close(); fw.close(); catch(ioexception ex) ex.printstacktrace(); else if(e.getsource()=jb3) jpf1.settext(null); jpf2.settext(null); jtf1.settext(null); jtf2.settext(
39、null); jtf3.settext(null); msg.settext("您已成功取消開戶!"); catch (exception ex)/只允許輸入數(shù)字的監(jiān)聽器class mykeylistener extends keyadapterprivate jtextfield jtf;private int length;public mykeylistener(jtextfield jtf)this.jtf = jtf;this.length = 15;public mykeylistener(jtextfield jtf,int length)this.jtf =
40、 jtf;this.length = length;public void keytyped(keyevent e)boolean b = character.tostring(e.getkeychar().matches("d");if(!b | jtf.gettext().length() = length)e.consume(); 3.main.java/主要包括:存款、取款、修改密碼、查詢余額等按鈕package client;import java.awt.*;import java.awt.event.*;import .url;import javax.swi
41、ng.*;public class main extends jframe implements actionlistenerjlabel jl1;jlabel jl;jbutton jb1,jb2,jb4,jb5,jb6;static account account;public main(account account)super("atm機(jī)主頁面");this.account=account;setlayout(null);jl1=new jlabel("荷塘月色atm機(jī)正在為您服務(wù).");jl1.setbounds(50, 0,300, 80);
42、font f=new font("華文琥珀",font.bold,20);jl1.setforeground(color.blue);jl1.setfont(f);jb1=new jbutton("取款");jb1.addactionlistener(this);jb2=new jbutton("查詢余額");/設(shè)置初始賬戶金額為1000元jb2.addactionlistener(this);jb4=new jbutton("存款");jb4.addactionlistener(this);jb5=new jbu
43、tton("修改密碼");jb5.addactionlistener(this);jb6=new jbutton("退出該界面");jb6.addactionlistener(this); /添加圖片 jl= new jlabel(); url resource = this.getclass().getresource("/images/6.jpg"); imageicon bgimage=new imageicon(resource); /創(chuàng)建圖標(biāo) jl.seticon(bgimage); jl.setbounds(0,0,400
44、,400);jb1.setbounds(10,110 ,140 ,40 );jb2.setbounds(10,190 ,140 ,40 );jb4.setbounds(200, 110, 140, 40);jb5.setbounds(200, 190, 140,40 );jb6.setbounds(100, 270,140 ,40 );this.add(jl1);this.add(jb1);this.add(jb2);this.add(jb4);this.add(jb5);this.add(jb6);this.add(jl);this.setsize(400,400);this.setdefa
45、ultcloseoperation(jframe.exit_on_close);this.setvisible(true);public void actionperformed(actionevent e) if(e.getsource()=jb1)new getmoney(account);this.setvisible(false);else if(e.getsource()=jb2)new yuxia(account);this.setvisible(false);else if(e.getsource()=jb4)new keepmoney(account);this.setvisi
46、ble(false);else if(e.getsource()=jb5)new change(account);this.setvisible(false);else if(e.getsource()=jb6)int i=joptionpane.showconfirmdialog(this,"確定要返回登陸界面?","提示",joptionpane.yes_no_option );if(i=1)return;new client(account);this.setvisible(false);public static void main(string
47、 args) new main(account);4.getmoney.java/取款頁面package client;import java.awt.*;import javax.swing.*;import java.awt.event.*;import .url;public class getmoney extends jframe implements actionlistenerjbutton jb1,jb2,jb3,jb4,jb5,jb6,jb7,jb8,jb9,jb10;jlabel jl;jlabel jl1;jtextfield jtf;int a=0;static acc
48、ount account;public getmoney(account account)super("提取現(xiàn)金");this.account=account;setlayout(null);jb1=new jbutton("100");jb1.addactionlistener(this);jb2=new jbutton("300");jb2.addactionlistener(this);jb3=new jbutton("500");jb3.addactionlistener(this);jb4=new jbu
49、tton("1000");jb4.addactionlistener(this);jb5=new jbutton("1500");jb5.addactionlistener(this);jb6=new jbutton("3000");jb6.addactionlistener(this);jb7=new jbutton("自定義");jb7.addactionlistener(this);jb8=new jbutton("5000");jb8.addactionlistener(this);jb
50、9=new jbutton("確定");jb9.addactionlistener(this);jb10=new jbutton("返回主頁面");jb10.addactionlistener(this);jl=new jlabel("您提取的金額數(shù)為:"); jtf=new jtextfield(4);jtf.addkeylistener(new mykeylistener(jtf);/設(shè)置文本框不可手動輸入jtf.seteditable(false); /添加圖片 jl1= new jlabel(); url resource =
51、 this.getclass().getresource("/images/6.jpg"); imageicon bgimage=new imageicon(resource); /創(chuàng)建圖標(biāo) jl1.seticon(bgimage); jl1.setbounds(0,0,400,400);jb1.setbounds(20, 40, 100,40 );jb2.setbounds(20, 90,100 ,40 );jb3.setbounds(20,140 ,100 ,40 );jb4.setbounds(280,40 ,100 ,40 );jb5.setbounds(280,9
52、0 ,100 ,40 );jb6.setbounds(280,140 ,100 ,40 );jb7.setbounds(20, 190, 100, 40);jb8.setbounds(280, 190, 100, 40);jb9.setbounds(50,290,100, 40);jb10.setbounds(250,290,100,40 );jl.setbounds(20, 240, 150,40 );jtf.setbounds(180, 250, 100,20 );this.add(jb1);this.add(jb2);this.add(jb3);this.add(jb4);this.add(jb5);this.add(jb6);this.add(jb7);this.add(jb8);this.add(jb9);this.add(jb10);this.add(jl);this.add(jtf);this.add(jl1);this.setsize(400,400);this.setdefaultcloseoperatio
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年紡織企業(yè)間產(chǎn)品買賣合同
- 2024年電動車零部件制造與技術(shù)許可合同3篇
- 2024簡易工程裝修合同
- 2025年度環(huán)保設(shè)施維護(hù)與升級補(bǔ)充合同模板3篇
- 專業(yè)化海運(yùn)出口物流合作合同(2024年版)版
- 2024樁基破樁頭作業(yè)服務(wù)協(xié)議版B版
- 2024年旅游業(yè)務(wù)合作合同詳細(xì)條款
- 2024年水資源開發(fā)與利用合作協(xié)議
- 2024皮草產(chǎn)品定制加工及銷售合作協(xié)議3篇
- 2024青島裝修工程糾紛解決合同范本3篇
- 北京市海淀區(qū)2023屆高三上學(xué)期期末考試化學(xué)試卷 附答案
- 小班防詐騙安全
- 深圳某項(xiàng)目空調(diào)蓄冷水池施工技術(shù)方案
- 汽車保險與理賠課件 7.3新能源汽車定損
- 全套教學(xué)課件《工程倫理學(xué)》
- 當(dāng)代青年信仰研究報告
- 婦科術(shù)后病人飲食護(hù)理
- 腦梗塞后遺癥護(hù)理查房
- 2024至2030年中國豬肉脯行業(yè)市場發(fā)展現(xiàn)狀及潛力分析研究報告
- 安裝空調(diào)勞務(wù)合同協(xié)議書
- 中國普通食物營養(yǎng)成分表(修正版)
評論
0/150
提交評論