




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、華北電力大學實驗報告實驗名稱 application 及 applet 程序設計學生姓名: 成 績: 實驗日期:課程名稱 java程序設計專業(yè)班級:學 號:指導教師:張學斌一、實驗目的和要求1掌握java swing組件的使用方法;2理解委托代理事件處理模型掌握;3掌握窗口菜單和快捷菜單設計方式;4掌握在組件上繪圖的方法;5掌握applet應用程序的設計方法二、實驗環(huán)境windows2000/windows xp, jdk 1.21.6三、實驗內(nèi)容和步驟要求按照實驗內(nèi)容,寫出詳細實驗過程和步驟,必要時截圖。實驗1算術(shù)測試1 實驗要求編寫一個算術(shù)測試小軟件,用來訓練小學生的算術(shù)能力。程序有三個類
2、組成,其中teacher對彖充 當監(jiān)視器,負責給出算術(shù)題h,并判斷回答者的答案是否正確;computerframe對彖負責為算術(shù)題冃 提供視圖,比如用八可以通過computerframe對象捉供的gui界而看到題目,并通過gui界而給岀 題目的答案;mailclass是軟件的主類。2 程序模板mainclass.jcivapublic class mainclass public static void main(string a咚s|j) computerframe frame;framc=ncw computcrframc();frame.settitle('*m 術(shù)測試”);fr
3、ame.setbounds(l 00,100,650,180);computcrframc.javaimport java.awt.*;import java.awt.event.*;import javax.swing. *;public class computerframe extends jframe jmenubar menubar;jmenu choicegrade; 選擇級別的菜單jmenuitem grade 1 ,grade2;jtextfield textone,texttwo,textresult;jbutton getproblemgiveanwser;j label
4、operatorlabe i, me ss age;teacher teacherzhang;computerframe() teacherzhang=new teacher();teacherzhang.setmaxinteger(20); setlayout(new flowlayouto);menubar = new jmenubar(); choicegrade = new jmenu("選擇級別”);grade 1 = new jmenuitem("幼兒級別”);grade2 = new jmenuitem("兒童級別”);grade 1 .addact
5、ionlistener(new actionlistener() public void actionperformed(actionevent e) tcachcrzhang.sctmaxintcgcr( 10););grade2.addactionlistener(new actionlistener() public void actionperformed(actionevent e) teacherzhang.setmaxinteger(50););choicegrade.add(grade 1); choicegrade.add(grade2);mcnubar.add(choicc
6、gradc);sell menubar( menubar);【代碼1】創(chuàng)建textone,其對見字符長是5texttwo=new jtextfield(5); textresult=new jtextfield(5);opcratorlabcl=ncw jlabcl(n+u);operatorlabel.setfont(new font("arial",font.bold,20); message=new jlabel("你還沒有回答呢”);getproblem=new jbutton(h 獲取題目"); givcanwscr=ncw jbutton(h
7、確認答案”); add(gctproblcm);add(textone); add(operatorlabel);add(texttwo);add(new jlabel(,=n); add(textresult);add(giveanwser); add(message);textresult.requestfocus(); textone.seteditable(false);tcxttwo.scteditablc(falsc); getproblemlsetactioncommandcgetproblem”); textresult.setactioncommand(uanswern);g
8、iveanwse r.setactioncommandcanswerj;teacherzhang.setjtextfield(textone,texttwo,textresult);teacherzhang.setjlabel(operatorlabel,message);【代碼2 將teacherzhang注冊為getproblem的actionevent事件監(jiān)視器 【代碼3】/將teacherzhang注冊為giveanwser的actionevent事件監(jiān)視器 【代碼4 將teacherzhang注冊為textresult的actionevent事件監(jiān)視器 setvisible(true
9、);validatc(); setdefaultcloseoperation(dispose_on_close);)techaer.javaimport java.util.random;import java.ciwt.event.*;import javax.swing.*;public class teacher implements actionlistener int numberone.numbertwo;string operator=,m;boolean isright;random random; 用于給出隨機數(shù)int maxinteger; 題目屮最人的整數(shù)jtextfie
10、ld textone,texttwo,textresult;j label opcratorlabclmcssagc;teacher() random = new random();public void setmaxinteger(int n) maxlntcgcr=n;public void actionperformed(actionevent e) string str = e.getactioncommand();if(str.equals(ngetproblemm) numberone = random.nextlnt(maxlnteger)+1 ;/l 至 maxinteger
11、之間的隨機數(shù); numbertwo=random.nextint( maxinteger)+1;double d=math.random(); 獲取(0,1)之間的隨機數(shù) if(d>=0.5)operator=h+m;elseoperator=m-n;textone.settext(,n+numberone);texttwo.settext(',n+numbertwo); operatorlabel.settext(operator); message.settext(h 請冋答"); textresult.settext(null);else if(str.equal
12、scanswer j) string answer=textresult.gettext();try int result=lnteger.parselnt(answer);if(operator.equals(,+,) if(result=numberone+numbertwo) message.settext("你回答正確”);elsemessage.settext("你回答錯誤”);else if(operator.equals(h-n) if(result=numberone-numbertwo) message.settext("你回答正確”);else
13、message.settext("你回答錯誤”);) catch(numberformatexception ex) message.settext("請輸入數(shù)字字符”);public void setjtextfield(jtextfield . t) tcxtonc=t0;texttwo=tl;textresult=t2;public void setjlabel(jlabel .label) opcratorlabcl=labcl 0;message=labell;3 實驗指導jbutton對象可觸發(fā)actionevent事件。為了能監(jiān)視到此類事件,事件源必須使用ad
14、dactionlistener 方法獲得監(jiān)視器,創(chuàng)建監(jiān)視器的類必須實現(xiàn)接口 actionlistenero4 實驗擴展(1) 模仿本實驗代碼,再增加“小學生”級別。(2) 給出上述程序增加測試乘法的功能。實驗2布局與日歷編寫一個應用程序,有一個窗口,該窗口的布局為borderlayout布局。窗口的屮心添加一個jpanel 容器pcenter, pcenter的布局是7彳亍7列的griderlayout布局,pcenter屮放置49個標簽,用來顯 示li歷。窗口的北面添加一個jpanel容器pnorth,其布局是flowlayout布局,pnorth放置兩個 按鈕:nextmonlh和prev
15、iousmontho單擊nextmonth按鈕,川以顯示當前刀的f一刀的日歷;單 擊previousmonth按鈕,可以顯示當前月的上一月的fl歷;窗口的南而添加一個j panel容器psouth, 其布局是flowlayout布局,psouth屮放置一個標簽用來顯示一些信息。2 程序模板calendarmainclass.javapublic class calendarmainclass public static void main(string argsfl) calendarframe frame二new calendarframe();framc.sctbounds(l 00,10
16、0,360,300);frame.setvisible(true);frame.setyearandmonth(2015,5);calendarbean.j ava import java.util.calendar; public class calendarbean string day u;int year=2005,month=0;public void sctycar(int year) this.year=year;public int getyear() return year;public void setmonth(int month) this. month=mon th;
17、public int getmonth() return month;public string getcalendar() string aj=new string42j;calendar h w=calendargetinstance();li 歷.set(year,month-l j);int 星期幾二 li 歷.get(calendar.day_of_week)-1;int day=0; if(month=lllmonth=3llmonth=5llmonth=7llmonth=8llmonth=10llmonth=12) day=31;if(month=4llmonth=6llmont
18、h=9llmonth= 11)day=30;if(month=2) if(year%4=0)&&(year% 100 !=0)ll(year%400=0)day=29;elseday=28;for(int i=星期幾,n=l;i星期幾+day;i+) ai=string.valueof(n);n+;return a;)calcndarframc.javaimport java.util.*;import java.awt.*;import java.awt.event. *;import javax.swing. *;import javax.swing.border. *;p
19、ublic class calendarframe extends jfnime implements actionlistener jlabel labelday=new jlabel42j;j button titlename=new jbutton7j;string name=“日”,“一丁二丁三”,”四”,“五”,”六”;jbutton ncxtmonth,prcviousmonth;calendarbean calendar;j label showmessage=new jlabel("n,jlabel.center);int year=2011 ,month=2;pub
20、lic calendarframe() jpancl pccntcr=ncw jpancl();【代碼1】將pcenter的布局設置為7行7列的gridlayout布局。 for(int i=0;iv7;i+) titlenamei=new jbutton(namei);titlenamei.setborder(new softbevelborder(bevelborder.raised); pccntcr.add(titlcnamci);for(int i=0;iv42;i+) labeldayi=new jlabel(u,jlabel.center);1 abe 1 dayi.setbor
21、der(new softbevelborder(bevelborder.lowered); 【代碼 2 /pcenter 添加組件 labeldayi0calendar=new calendarbean(); nextmonth=new jbutton(m 卜月n); previousmonth=new jbutton("上月h); ncxtmonth.addactionlistcncr(this); previousmonth.addactionlistener(this);j panel pnorth=new jpanel(),psouth=new jpanel();pnorth
22、.add(previousmonth);pnorth.add(nextmonth);psouth.add(showmessage);add(pcenter,borderlayout.center);【代碼3】窗口添加pnorth在北而區(qū)域【代碼4】/窗口添加psouth在南區(qū)域。set ycarandmonth(ycar,month);setdefaultcloseoperation(dispose_on_close);1public void setyearandmonth(int y,int m) calenda r.setyear(y);calcndar.sctmonth(m);stri
23、ng day=ciilendar.getcalendar();for(int i=0;i<42;i+)labeldayi.settext(dayfi);showmcssagc.scttcxtc u 歷:h+calcndar.gctycar()+h年” + calcndar.gctmonth()+n刀”);public void actionperformed(actionevent e) if(e.getsource()=nextmonth) month=month+l;if(month>12)month=l;calenda 匚 setmonth(month);string day
24、=calendar.gctcalcndar();for(int i=0;i<42;i+) labeldayi.settext(dayi);else if(e.getsource()=previousmonth) month=month-l;if(month< 1)month=12;calenda 匚 setmonth(month);string daylj=calendar.getcalendar();for(int i=0;i<42;i+)labeldayi.settext(dayil);showmessage.settext(m 口 歷:n+calendar.getyea
25、r()+u年”+calendar.getmonth()+"月n);3 實驗擴展在calendarframe類中增加一個jtextfield文本框,用戶可以通過在文木框中輸入年份來修改 calendar對彖的int成員year實驗3英語單詞拼寫訓練1 實驗要求編寫一個應用程序,要求如卜:窗口有一個textfield對象和一個按鈕對象,將這兩個對象添加到一個面板屮,然后將該面板添 加到窗口的上面。用戶在textfield對彖中輸入一個英文單詞,然后按enter或單擊“確定”按鈕,程序?qū)?chuàng)建若十 個不町編輯的文本框,每個文本框隨機顯示英文單詞中的一個字母。耍求將這些文本框按一行 添加到一個
26、面板屮,然后將該面板添加到窗口的屮心。用戶用鼠標單擊一個文本框后,通過按下鍵盤上的“一”和“一”鍵交換相鄰文本框中的字母, 使得這些文本框中的字母的排列順序和英文單詞屮字母的順序相同。2 程序模板wordmainclass.javapublic class wordmainclass public static void main(string argsfl) new spcl iingwordframc();)rondomstring.javapublic class rondomstring /負責隨機排列單詞中的字母string str=,u,;public string getrond
27、omstring(string s) stringbuffer strbuffer=new stringbuffer(s);int m=strbuffer.length();for(int k=0;k<m;k+) int index=(int)(math.random()*strbuffer.length();/math.random()返回(0,1)之間的隨機數(shù) char c=strbuffe r.chaiat(index);str=str+c;strbuffer=strbuffe 匚 deletecharat(index);return str;letterlabel.javaimp
28、ort java.awt.*;import java.aw 匸 event.*;import javax.swing. *;public class letterlabel extends jtextfield implements focuslistener letterlabel() seteditable(false);addfocuslistener(this);/【代碼1】將當前對彖注冊為口身的焦點視器 setbackground(colo 匚 white); setfont(new font(harial",font.plain,30);public static let
29、terlabelj getletterlabel(int n) letterlabel a=new letterlabelnj;for(int k=0;k<a.length;k+)ak=ncw lcttcrlabcl();return a;public void focusgained(focusevent e) setbackground(colo 匚 cyan);public void focuslost(focusevent e) setbackground(color. white);public void settext(char c) settext(”+c);spellin
30、gwordframe.javaimport java.awt.*;import java.awt.event.*;import javax.swing.*;public class spellingwordframe extends j frame implements keylistener,actionlistener jtextfield input word;j button button;letterlabel label;jpanel northp,centerp;box wordbox;string hintmcssagc=-用鼠標單擊字母,按左右箭頭交換字母,將其排列成所輸入的
31、單詞”;j label mcssaagclabcl=ncw jlabcl(hintmcssagc);string word=,h,;spellingwordframe() inputword=new jtextfield(12);button=new jbutton(n確定”);button.addactionlistener(this);inputword.addactionlistener( this);noilhp=new jpanel();northp.add(new jlabel("輸入單詞:");northp.add(inputword);northp.add(
32、button);centerp=new jpanel();wordbox=box.createhorizontalbox();centerp.add(wordbox);add(northp,borderlayout.north); add(centerp,borderlayout.center); add(messaagelabei,borderlayout.south); setbounds( 100,100,350,180);setvisible(true);validate(); sctdcfaultcloscopcration(dispose_on_close);public void
33、 actionperformed(actionevent e) word=inputword.gettext();int n=wordength();rondomstring rondom=ncw rondomstringo;string randomword=rondom.getrondomstring(word); wordbox.removeall();messaagelabel.settext(hintmessage); if(n>0) labei=letterlabel.getletterlabel(n);for(int k=o;k<label.length;k+) la
34、belkj.settext(u"+randomword.charat(k); wordbox.add(labelk);【代碼2】將當前窗口注冊為labelk的鍵盤監(jiān)視器 validate();inputword.settext(null);label oj.requestfocuso;public void keypressed(keyevent e) letterlabel sourcelabel=(letterlabel)e.getsource(); int index=-l;if(e.getkeycode()=keyevent.vk_left) for(int k=o;k<
35、;label.length;k+) if(labelk=sourcelabel) index=k; break;if(index!=0) 交換文本框中的字母string temp=labelindex.gettext(); labelindexj .settext(labelindex-1 .gettext(); labelindex- l.settext(temp);labclindcx-l .rcqucstfocus();1else if(【代碼3】) 判斷按下的是否是一鍵 for(int k=o;k<label.length;k+) if(labelk=sourcelabel) i
36、ndex=k;break;if(index !=label.length-1) string temp=labelindex-gettext(); label i ndex j .settext(label lindex+1j .gettext(); labelindex+ lj.settext(temp);labelf index+ l.requestfocus();validate();public void keytyped(keyevent e) public void keyreleased(keyevent e) string success=nn;for(int k=o;k<
37、;label.length;k+) string str=labelk.gettext();success=success+str;if(success.equals(word) messaagelabel.settext(n恭喜你,你成功 了 ”);for(int k=o;k<label.length;k+) labelk.remove keylistener(this); label k .removefocuslistener(label k); label k.setbackground(color. white);)inputword.requestfocus();3 實驗擴展
38、增加記錄用戶移動字母次數(shù)的功能,即當用戶拼寫成功后,messagelabel標簽顯示的信息屮包含用 戶移動字母的次數(shù)。實驗4字體對話框1 實驗要求編寫一個fontfamily類,該類對象可以獲取當前機器可用的全部字體名稱。編寫一個jdialog的了類fontdialog,該類為fontfamily對象維護的數(shù)據(jù)提供視圖,要求fontdialog 對彖使川下拉列表顯示fontfamily對彖維護的全部字體的名稱,當選擇下拉列表中某個字體名稱后, fontdialog對彖用標簽顯示該字體的效果。要求對話框提供返凹下拉列表中所選擇的字體名稱的方 法。編寫一個窗口,該窗口小有“設直字體”按鈕和一文本區(qū)
39、對象,當單擊該按鈕時,彈出一個 fontdialog創(chuàng)建的對話框,然后根據(jù)用戶在對話框下拉列表中選擇的字體來顯示文本區(qū)中的文本。2 程序模板fontdialogmainclass.javapublic class fontdialogmainclass public static void main(string argsfl) framchavcdialog win=ncw framchavcdialogo;fontfamilynames.javaimport java.awt.graphicsenvironment;public class fontfamilynames string a
40、llfontnamesj;public string j getfontname() graphicsenvironment ge=graphicsenvironment.getlocalgraphicsenvironitient(); allfontnamcs=gc.gctavailablcfontfamilynamcs();return allfontnames;)fontdialog.javaimport java.awt.event.*;import java.awt.*;import javax.swing. *;public class fontdialog extends jdi
41、alog implements itemlistener.actionlistener fontfamilynames fontfamilynames;int fontsize=3&string fontname;jcombobox fontnamelist,fontsizelist;j label label;font font;jbutton yes,cancel;static int yes=1,no=0;int state=-l;fontdialog(jframe f) supcr(f);settitle("字體對話框“);font=new font(“宋體”,fon
42、t.plain, 12);fontfamilynames=new fontfamilynamesq;【代碼1】當前對話框調(diào)用setmodal(boolean b)設置為有模式 ycs=ncw jbutton(nycsh);ccincel=new jbutton(ncancer,);yes.addactionlistener(this);cancel.addactionlistener(this);label=new jlabel(”hello,奧運 ”,jlabel.center);fontnamclist=ncw jcombobox();fontsizelist=new jcombobox(
43、);string namej=fontfamilynames.getfontname();fon tn ameli st.add item("字體”);for(int k=o;k<name.length;k+)fontnamclist.additcm(namck);fontsizelist.addltemc'大小”);for(int k=8;k<72;k=k+2)fontsizelist.additem(new integer(k);fontnamelist.addltemlistener(this);fontsizelist.addltemlistener(th
44、is);jpanel pnorth=new jpanel();pn orth. add(fontn amelist);pn orth.add(fontsizeli st);add(pnorth, b orderlay out. north);add(l abc 1, b ordcrlayout. c enter);jpanel psouth=new jpanel();psouth.add(yes);psouth.add(cancel);add(psouth,borderlayout.south);sctbounds(l 00,100,280,170);setdefaultcloseoperat
45、ion(dispose_on_close); validate();public void itemstatechanged(itemevent e) if(e>getsource()=fontnamelist) fontname=(string)fontnamelist.getselecteditem();font=new font(fontname,font.plain,fontsize);else if(e.getsource()=fontsizelist) integer m=(integer)fontsizelist.getselecteditem();fontsize=m.i
46、ntvalue();font=new font(fontname,font.plain,fontsize);label. setfont(font);label.rcpaint();validate();public void actionperformed(actionevent e) if(e.getsource()=yes) state=yes;【代碼2】對話框設置為不可見else if(e.getsource()=cancel) state=no;【代碼3】對話框設置為不可見public int getstate() return state;public font getfont()
47、 return font;framehavedialog.javaimport java.aw 匸 event.*;import java.awt. *;import javax.swing. *;public class framchavcdialog extends jframc implements actionlistcncr j text area text;j button buttonfont;framehavedialogo buttonfont=new jbutton("設置字體”);text=new jtextarea("java 2 實用教程(第四版)
48、”); buttonfont.addactionlistener(this); add(buttonfont,borderlayout.north);add(text);setbounds(60,60,300,300);sctvisiblc(truc);validate(); setdefaultcloseoperation(dispose_on_close);public void actionperformed(actionevent e) if(e>getsource()=buttonfont) fontdialog dialog=new fontdialog(this); dia
49、log.setvisible(true);if(dialog.getstate()=fontdialog.yes) text.setfont(dialog.getfont(); tcxt.rcpaint();if(dialog.getstate()=fontdialog.no) text.repaint();實驗5華容道游戲1. 實驗要求首先,編寫一個按鈕的了類,該了類創(chuàng)建的對彖代表華容道中的任務。通過焦點事件控制人物的 顏色,當人物獲得焦點時顏色為藍色,當失去焦點時顏色為灰色。我們通過鍵盤事件和鼠標事件 來實現(xiàn)曹操,關(guān)羽等人物的移動。當人物上發(fā)牛鼠標事件或鍵盤事件吋,如來鼠標指針的位置是 在
50、人物的下方(也就是組件的下半部分)或按鍵盤上的“丨”鍵,人物向下移動。向左,向右和 向上移動原理類似。2. 程序模板moveexample.javaimport java.awt.*;import java.applet.*;import java.awt.cvcnt. *;import javax.swing.*;public class moveexample public static void main(string argsj) new hua_rong_road();class person extends j button implements focuslistener int
51、 number;color c;person(int numbeistring s) super(s);this.number=number;c=getbackground();setfont(new font(h宋體u,font.center_baseline, 14);【代碼1/當前按鈕注冊為木身的監(jiān)視器public void focusgained(focusevent e) setbackground(colo 匚 cyan);public void focuslost(focusevcnt c) setbackground(c);class hua_rong_road extends
52、 jframe implements keylistener,mouselistener,actionlistener person person=ncw person10;jbutton left,right,above,below;jbutton restart=new jbutton(”重新開始”);container con;public hua_rong_road() init();setbounds( 100,100,320,360);setvisible(true);validate();setdefaultcloseopcration(jframe.exit_on_close)
53、;public void init() con=getcontentpane(); con.setlayout(null);con.add(rcstart);restart.setbounds( 100,5,120,25);restart.addactionlistener(this);string name=nw 操 t 關(guān)羽丁張”,”劉 t 馬”,”許 t 兵”,”兵”,”兵 t 兵” ;fbr(int i=0;i<name.length;i+) personi=new person(i,namei);【代碼2/將當前窗口注冊為person山的keyevent事件監(jiān)視器【代碼3/將當
54、前窗口注冊為personfi的mouseevent事件監(jiān)視器con.add(personi);person 0.sctbounds( 104,54,100,100);person 1 .setbounds(l 04,154,100,50);person2j.setbounds(54, 154,50,100); person3j.setbounds(204,154,50,100);person4.setbounds(54, 54, 50,100);person5.sctbounds(204, 54, 50,100);person6.setbounds(54,254,50,50); person7
55、.setbounds(204,254,50,50);personf8.setbounds( 104,204,50,50); personf9.setbounds( 154,204,50,50);【代碼4/ person9獲取焦點left=new jbutton(); right=new jbutton(); above=new jbutton(); below=new jbutton();con.add(left); con.add(right);con.add(above);con.add(below);left.setbounds(49,49,5,260); right.setbounds(254,49,5,260);above.setbounds(49,49,210,5); below.setbounds(49,304,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- (二檢)廈門市2025屆高中畢業(yè)班第二次質(zhì)量檢測歷史試卷
- 酒店勞動外包合同(2篇)
- 技術(shù)研發(fā)團隊人員結(jié)構(gòu)統(tǒng)計表格
- 心理學與社會行為分析試題及答案
- 農(nóng)業(yè)產(chǎn)業(yè)鏈市場分析表
- 新型能源技術(shù)合作開發(fā)保密條款合同書
- 《汽車電氣設備構(gòu)造與檢修》專題復習 課件匯 復習專題1-8
- 集裝箱運輸合同
- 冰雪奇緣的童話世界征文
- 文件傳輸與接收流程表格
- 部編版二年級語文下冊第一單元口語交際一語文園地一課件
- 近代早期的歐洲-人教版課件
- 高中彎道跑教案
- 音樂劇悲慘世界歌詞
- 大狗巴布課件教學
- 湖南非稅在線繳費操作步驟
- 精品殘疾兒童教育送教上門語文教案課程
- 《法院執(zhí)行實務》單元三(上)(課堂PPT)課件
- 煤礦防治水中長期規(guī)劃2017—2019
- 幼兒園一日生活中的保教結(jié)合(課堂PPT)
- 有害物質(zhì)培訓教材(ROHS2.0及REACH)
評論
0/150
提交評論