




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
Python語言編程導(dǎo)論第十章Python的GUI編程張晉連2016.112021/7/311內(nèi)容提要2021/7/312概述GUI程序開發(fā)簡介Tkinter與主要組件Turtle庫簡介一、概述2021/7/313使用圖形用戶界面(GUI),可以使程序更友好。Python作為一種“膠水性”語言,提供了眾多
GUI開發(fā)庫的綁定,適合快速開發(fā)GUI。目前大部分開發(fā)庫還不支持Python3,且?guī)斓母滤俣炔皇呛芸?。如果使用的是Python3,可選擇的開發(fā)庫就不是很多了。目前常用的開發(fā)庫有:Python內(nèi)置的Tkinter、Graphics、Turtle等,以及非常強(qiáng)大的PyQT等。如果使用的是Python
2,還有如wxPython、PyGTK、PMW等開發(fā)庫可以選擇。本章簡要介紹以下圖形庫:Tkinter—Python
標(biāo)準(zhǔn)GUITurtle—python內(nèi)置的圖形庫。2021/7/314二、GUI程序開發(fā)簡介2021/7/315日常使用的大量客戶端程序都屬于GUI程序,即在一個(gè)界面上有很多功能塊,包括:標(biāo)簽、按鈕、輸入框、菜單等。開發(fā)GUI程序,首先需要有一塊空白畫面,然后在其上劃分出不同的區(qū)域,放上不同的模塊,最后完成每一個(gè)模塊的功能。GUI程序開發(fā)基本步驟和過程:2021/7/316首先要有底層的根窗口對象,在其基礎(chǔ)上創(chuàng)建一個(gè)個(gè)小窗口對象。每一個(gè)窗口都是一個(gè)容器,可將所需的組件置于其中。每種GUI開發(fā)庫都擁有大量的組件,一個(gè)GUI程序就是由各種不同功能的組件組成的,而根窗口對象則包含了所有組件。組件本身也可以作為一個(gè)容器,它可以包含其他組件,如下拉框。這種包含其他組件的稱為父組件,反之,包含在其他組件中的組件稱為子組件。這是一種相對的概念,對于有著多層包含的情況,某組件的父組件一般指的是直接包含它的組件。構(gòu)建出了GUI程序的每一個(gè)組件,只完成了程序的界面,但此時(shí)只能看不能用,需要給每一個(gè)組件添加對應(yīng)的功能。使用GUI程序時(shí),會進(jìn)行各種操作,如鼠標(biāo)移動,按下或松開鼠標(biāo)鍵,按下鍵盤按鍵等,這些操作稱為事件。每個(gè)組件對應(yīng)著一些行為,如在文本框中輸入文本,單擊按鈕等,這些也稱為事件。GUI程序啟動的時(shí)候就一直監(jiān)控這些事件,當(dāng)某個(gè)事件發(fā)生的時(shí)候,就進(jìn)行對應(yīng)的處理并返回相應(yīng)的結(jié)果。因此,GUI程序是由這一整套事件驅(qū)動的,這個(gè)過程稱為事件驅(qū)動處理。2021/7/317一個(gè)事件發(fā)生后,GUI程序捕獲該事件、作出對應(yīng)的處理并返回結(jié)果的過程稱為回調(diào)。如計(jì)算器程序,單擊了“=”按鈕之后,便產(chǎn)生了一個(gè)事件,需要計(jì)算最終的結(jié)果,程序便開始對算式進(jìn)行計(jì)算,返回最終結(jié)果并顯示出來。這個(gè)計(jì)算并顯示結(jié)果的過程即為回調(diào)。當(dāng)為程序需要的每一個(gè)事件都添加完相應(yīng)的回調(diào)處理之后,整個(gè)GUI就完成了。2021/7/318三、Tkinter與主要組件2021/7/319Tk是Python默認(rèn)的工具集(即圖形庫),Tkinter是Tk的Python接口,通過Tkinter可以方便地調(diào)用Tk進(jìn)行圖形界面開發(fā)。Tk與其他開發(fā)庫相比,不是最強(qiáng)大的,模塊工具也不是非常的豐富。但它非常簡單,所提供的功能開發(fā)一般的應(yīng)用也完全夠用了,且能在大部分平臺上運(yùn)行。Python自帶的IDEL也是用Tkinter開發(fā)的。Tkinter的不足之處是缺少合適的可視化界面設(shè)計(jì)工具,需要通過代碼來完成窗口設(shè)計(jì)和元素布局。Tkinter中提供了較為豐富的控件,完全能滿足基本的GUI程序的需求。由于Tkinter模塊已經(jīng)在Python中內(nèi)置,所以在使用之前,只需將其導(dǎo)入即可。兩種導(dǎo)入方式為:importtkinterastk—導(dǎo)入tkinter,但沒引入任何組件,在使用時(shí)需要使用tk前綴,如需要引入按鈕,則表示為:tk.Button。fromtkinterimport*—將tkinter中的所有組件一次性引入。2021/7/31101、在程序中使用Tkinter2021/7/3111利用Tkinter模塊來引用Tk構(gòu)建和運(yùn)行GUI程序,通常需要5步:導(dǎo)入Tkinter模塊;創(chuàng)建一個(gè)頂層窗口;在頂層窗口的基礎(chǔ)上構(gòu)建所需要的GUI模塊和功能;將每一個(gè)模塊與底層程序代碼關(guān)聯(lián)起來;執(zhí)行主循環(huán)。Tkinter主要組件簡介組件功能Button按鈕。類似標(biāo)簽,但提供額外功能,如鼠標(biāo)按下、釋放及鍵盤操作事件Canvas畫布。提供繪圖功能(直線、橢圓、多邊形、矩形),可以包含圖形或位圖Checkbutton選擇按鈕。一組方框,可以選擇其中的任意個(gè)Radiobutton單選按鈕。一組方框,其中只有一個(gè)可被選擇Entry文本框。單行文字域,用來收集鍵盤輸入Frame框架。包含其他組件的純?nèi)萜鱈abel標(biāo)簽。用來顯示文字或圖片Listbox列表框。一個(gè)選項(xiàng)列表,用戶可以從中選擇Menu菜單。單擊后彈出一個(gè)選項(xiàng)列表,用戶可以從中選擇Menubutton菜單按鈕。用來包含菜單的組件(有下拉式、層疊式)Message消息框。類似于標(biāo)簽,但可以顯示多行文本Scale進(jìn)度條。線性“滑塊”組件,可設(shè)定起始值和結(jié)束值,顯示當(dāng)前位置的精確值Scrollbar滾動條。對其支持的組件(文本域、畫布、列表框、文本框)提供滾動功能Text文本域。多行文字區(qū)域,可用來收集(或顯示)用戶輸入的文字Toplevel頂級。類似框架,但提供一個(gè)獨(dú)立的窗口容器。
12組件的共同屬性:2021/7/3113dimensions
:尺寸colors:顏色fonts:字體anchors:錨relief
styles:浮雕式bitmaps:顯示位圖cursors:光標(biāo)的外形說明:每種組件還有其各自特有的屬性注意:Tk使用了一種包管理器來管理所有的組件,當(dāng)定義完組件之后,需要調(diào)用pack()方法來控制組件的顯示方式,若不調(diào)用pack()方法,組件將不會顯示。在交互環(huán)境下,編寫Tkinter測試代碼時(shí),運(yùn)行過Tk()(創(chuàng)建頂層窗口的函數(shù))之后即進(jìn)入主循環(huán),可以看到頂層窗口。而若是運(yùn)行py文件,一定要調(diào)用mainloop()方法進(jìn)入主循環(huán),方可看到頂層窗口。2021/7/3114創(chuàng)建GUI應(yīng)用程序窗口代碼模板:2021/7/31152、頂層窗口頂層窗口也稱為根窗口。頂層窗口實(shí)際上是一個(gè)普通窗口,包括一個(gè)標(biāo)題欄和窗口管理器所提供的窗口裝飾部分,如最大化按鈕等。在一個(gè)Tkinter開發(fā)的應(yīng)用程序中,只需要創(chuàng)建一個(gè)頂層窗口即可,且此窗口的創(chuàng)建必須是在其他窗口創(chuàng)建之前。2021/7/3116例10-1:創(chuàng)建頂層窗口執(zhí)行結(jié)果:2021/7/31173、標(biāo)簽標(biāo)簽組件可以用來顯示圖片和文本,通過在文本中添加換行符來控制換行,也可以通過控制組件的大小實(shí)現(xiàn)自動換行。例10-2:使用標(biāo)簽(Label)編寫一個(gè)程序,在程序主體中顯示“HelloWorld!”。2021/7/3118程序及執(zhí)行結(jié)果:2021/7/3119Label組件常用參數(shù)2021/7/3120參數(shù)描述height組件的高度(所占行數(shù))width組件的寬度(所占字符個(gè)數(shù))fg前景字體顏色bg背景顏色justify多行文本的對齊方式,可選參數(shù)為:LEFT、CENTER、RIGHTpadx文本左右兩側(cè)的空格數(shù)(默認(rèn)為1)pady文本上下兩側(cè)的空格數(shù)(默認(rèn)為1)增加了參數(shù)后的程序及執(zhí)行結(jié)果:2021/7/31214、框架框架(Frame)相對于其他組件而言,它只是個(gè)容器,因?yàn)樗鼪]有方法,但它可以捕獲鍵盤和鼠標(biāo)的事件來進(jìn)行回調(diào)。框架一般用作包含一組控件的主體,且可以定制外觀。2021/7/3122例10-3:創(chuàng)建不同樣式的框架2021/7/31235、按鈕2021/7/3124按鈕組件(Button)是tkinter最常用的圖形組件之一,通過Button可以方便地與用戶進(jìn)行交互。嚴(yán)格地說,按鈕(Button)也可被看作標(biāo)簽,只是它可以捕獲鍵盤和鼠標(biāo)事件。按鈕可以禁用,禁用之后的按鈕不能進(jìn)行單擊等任何操作。如果將按鈕放進(jìn)TAB群中,就可以使用TAB鍵來進(jìn)行跳轉(zhuǎn)和定位。例10-4:創(chuàng)建按鈕示例2021/7/3125Button組件常用參數(shù)2021/7/3126參數(shù)描述height組件的高度(所占行數(shù))width組件的寬度(所占字符個(gè)數(shù))fg前景字體顏色bg背景顏色activebackground按鈕按下時(shí)的背景顏色activeforeground按鈕按下時(shí)的前景顏色justify多行文本的對齊方式,可選參數(shù)為:LEFT、CENTER、RIGHTpadx文本左右兩側(cè)的空格數(shù)(默認(rèn)為1)pady文本上下兩側(cè)的空格數(shù)(默認(rèn)為1)state設(shè)置組件狀態(tài),默認(rèn)為NORMAL,可設(shè)置為:DISABLED—禁用組件(必須大寫)增加了參數(shù)后的程序和執(zhí)行結(jié)果:按下“退出”按鈕:2021/7/31276、輸入框2021/7/3128一個(gè)GUI程序,接收用戶的輸入幾乎是必不可少的。輸入框(Entry)組件就是用來接收用戶輸入的最基本的組件??梢詾檩斎肟蛟O(shè)置默認(rèn)值,也可以禁止用戶輸入。如果禁止輸入,用戶就不能改變輸入框中的值了。當(dāng)用戶輸入的內(nèi)容一行顯示不下的時(shí)候,輸入框會自動生成滾動條。例10-5:創(chuàng)建輸入框示例2021/7/3129Entry參數(shù)組件常用參數(shù)2021/7/3130參數(shù)描述height組件的高度(所占行數(shù))width組件的寬度(所占字符個(gè)數(shù))fg前景字體顏色bg背景顏色show將Entry框中的文本替換為指定字符,用于輸入密碼等,如設(shè)置show="*"state設(shè)置組件狀態(tài),默認(rèn)為NORMAL,可設(shè)置為:DISABLED—禁用組件,READONLY—只讀例10-6:將攝氏度轉(zhuǎn)換為華氏度2021/7/3131程序執(zhí)行:2021/7/31327、單選按鈕單選按鈕(Radiobutton)是一組排他性的選擇框,只能從該組中選擇一個(gè)選項(xiàng),當(dāng)選擇了其中一項(xiàng)之后便會取消其他選項(xiàng)的選擇。要想使用單選按鈕,必須將這一組單選按鈕與一個(gè)相同的變量關(guān)聯(lián)起來,由用戶為這個(gè)變量選擇不同的值。2021/7/3133例10-7:創(chuàng)建單選按鈕示例2021/7/3134Radiobutton組件常用參數(shù)2021/7/3135參數(shù)描述variable單選按鈕索引變量,通過變量的值確定哪個(gè)單選按鈕被選中。一組單選按鈕使用同一個(gè)索引變量value單選按鈕選中時(shí)變量的值command單選按鈕選中時(shí)執(zhí)行的命令(函數(shù))8、復(fù)選按鈕2021/7/3136與單選按鈕相對的是復(fù)選按鈕(Checkbutton)。復(fù)選按鈕之間沒有互斥作用,可以一次選擇多個(gè)。同樣地,每一個(gè)按鈕都需要與一個(gè)變量相關(guān)聯(lián),且每一個(gè)復(fù)選按鈕關(guān)聯(lián)的變量都是不同的。若像單選按鈕一樣,關(guān)聯(lián)的是同一個(gè)按鈕,則當(dāng)選中其中一個(gè)的時(shí)候,會將所有按鈕都選上??梢越o每一個(gè)復(fù)選按鈕綁定一個(gè)回調(diào),當(dāng)該選項(xiàng)被選中時(shí),執(zhí)行該回調(diào)。例10-8:基本復(fù)選按鈕示例2021/7/3137例10-9:創(chuàng)建帶“禁用”狀態(tài)的復(fù)選按鈕2021/7/3138Checkbutton組件常用參數(shù)2021/7/3139參數(shù)描述variable復(fù)選按鈕索引變量,通過變量的值確定哪些復(fù)
選按鈕被選中。每個(gè)復(fù)選按鈕使用不同的變量,使復(fù)選按鈕之間相互獨(dú)立onvalue復(fù)選按鈕選中(有效)時(shí)變量的值offvalue復(fù)選按鈕未選中(無效)時(shí)變量的值command復(fù)選按鈕選中時(shí)執(zhí)行的命令(函數(shù))例10-10:單選按鈕及復(fù)選按鈕綜合應(yīng)用2021/7/3140程序:2021/7/31412021/7/3142說明:程序中,文字的顏色通過Radiobutton來選擇,同一時(shí)間只能選擇一個(gè)顏色。在三個(gè)Red、Blue和Green三個(gè)單選框中,定義了同樣的變量參數(shù)color,選擇不同的單選按鈕會為該變量賦予不同的字符串值,內(nèi)容即為對應(yīng)的顏色。任何單選按鈕被選中都會觸發(fā)
colorChecked()函數(shù),將標(biāo)簽修改為對應(yīng)單選框表示的顏色。2021/7/31439、消息很多時(shí)候需要給用戶發(fā)送消息,一般內(nèi)容較多,如幫助信息等。消息(Message)控件提供了顯示多行文本的方法,且可以設(shè)置字體和背景色。
Message組件提供了一個(gè)標(biāo)準(zhǔn)的方法,可以非常方便地實(shí)現(xiàn)這項(xiàng)功能。2021/7/3144例10-11:創(chuàng)建消息示例2021/7/314510、滾動條滾動條(Scrollbar)組件可以添加至任何一個(gè)組件,一些組件在界面顯示不下時(shí)會自動添加滾動條,但可以使用滾動條組件來對其進(jìn)行控制。2021/7/3146例10-12:滾動條示例2021/7/314711、列表框列表框(ListBox)組件是一個(gè)選項(xiàng)列表,用戶可以從中選擇某一個(gè)選項(xiàng)。例10-12中滾動條組件中使用了列表框。2021/7/3148例10-13:創(chuàng)建列表框示例2021/7/314912、消息框消息窗口(messagebox)用于彈出提示框向用戶進(jìn)行告警,或讓用戶選擇下一步如何操作。消息框包括很多類型,常用的有info、warning、error、yesno、okcancel等,包含不同的圖標(biāo)、按鈕以及彈出提示音。2021/7/3150例10-14:各種消息框應(yīng)用2021/7/3151源程序:2021/7/31522021/7/315313、繪圖組件繪圖組件(Canvas—畫布)可以在GUI中實(shí)現(xiàn)2D圖形的繪制,相當(dāng)于畫圖板。組件內(nèi)置了多種繪圖函數(shù),可以通過簡單的
2D坐標(biāo)繪制直線、矩形、圓形、多邊形等。2021/7/3154例10-15:繪圖應(yīng)用2021/7/3155程序執(zhí)行:2021/7/3156說明:直線(line),即線段,通過兩個(gè)端點(diǎn)定義。坐標(biāo)順序?yàn)閤1、y1、x2、y2。矩形(rectangle)通過對角線上的兩個(gè)點(diǎn)來定義。需要注意的是Canvas中沒有畫圓函數(shù),這里通過繪制橢圓間接實(shí)現(xiàn)了繪制圓形的函數(shù)drawCircle()。橢圓(oval)是通過外切矩形的對角線兩點(diǎn)來定義的。2021/7/3157例10-16:畫布顯示文字、圖片和圖形2021/7/3158例10-17:控制圖形移動2021/7/3159用鍵盤的上、下、左、右鍵可移動紅色方塊2021/7/3160例10-18:編程實(shí)現(xiàn)簡易聊天窗口GUI聊天窗口布局:左上:聊天歷史信息顯示左中:當(dāng)前信息編輯區(qū)域左下:按鈕區(qū)域右側(cè):信息顯示區(qū)域2021/7/3161Frame控件:容器區(qū)域布局:–frmLT、frmLC、frmLB、frmRT2021/7/3162統(tǒng)一控件對象命名規(guī)則:2021/7/3163“控件類型”+“功能”frmLT,
frame+LeftToptxtMsg,text控件+消息btnSend,button控件+發(fā)送窗口控件:txtMsgLIsttxtMsglblImagebtnSendbtnCancel2021/7/3164創(chuàng)建各窗口控件:2021/7/3165sendMsg()回調(diào)函數(shù)功能:在消息框列表輸出歷史消息,同時(shí)將當(dāng)前時(shí)間、當(dāng)前信息作為最后一條歷史消息。然后刪除消息發(fā)送框的內(nèi)容。2021/7/3166sendMsgEvent():cancelMsg():2021/7/3167grid()方法:界面上控件的布局2021/7/3168grid()方法:界面上控件的布局2021/7/3169源程序:2021/7/31702021/7/3171課堂練習(xí)一:2021/7/3172課堂練習(xí)一四、Turtle庫簡介2021/7/3173Turtle庫是Python語言中一個(gè)很流行的繪制圖像的函數(shù)庫。使用turtle庫,可想象為一個(gè)小烏龜,在一個(gè)橫軸為x、縱軸為y的坐標(biāo)系原點(diǎn),(0,0—中心)位置開始,方向向右。它根據(jù)一組函數(shù)指令的控制,在這個(gè)平面坐標(biāo)系中移動,從而在它爬行的路徑上繪制了圖形。詳細(xì)信息見:1、控制畫筆繪制狀態(tài)方法2021/7/3174方法名稱方法含義pendown()放下畫筆,移到指定點(diǎn)后繼續(xù)繪制penup()提起畫筆,用于另起一個(gè)地方繪制時(shí)用,與pendown()配對使用pensize(width)設(shè)置畫筆線條的粗細(xì)為指定大小2、turtle運(yùn)動方法方法名稱方法含義forward()沿著當(dāng)前方向前進(jìn)指定距離backward()沿著當(dāng)前相反方向后退指定距離right(angle)向右旋轉(zhuǎn)angle角度left(angle)向左旋轉(zhuǎn)angle角度goto(x,y)移動到絕對坐標(biāo)(x,y)處setx(
)將當(dāng)前x軸移動到指定位置sety(
)將當(dāng)前y軸移動到指定位置setheading(angle)設(shè)置當(dāng)前朝向?yàn)閍ngle角度(0表示向東,90表示向北,180表示向西,270表示向南)home()設(shè)置當(dāng)前畫筆位置為原點(diǎn),朝向東。circle()繪制一個(gè)指定半徑,角度、以及步驟的圓圈dot(r,
color)繪制一個(gè)指定直徑和顏色的圓點(diǎn)undo()撤銷畫筆最后一步動作speed()2021/7/31設(shè)置畫筆的繪制速度,參數(shù)為0-10之間
75例10-19:應(yīng)用circle方法繪制圖形2021/7/31763、Turtle顏色和字體繪制方法2021/7/3177方法名稱方法含義color()設(shè)置畫筆的顏色begin_fill()填充圖形前,調(diào)用該方法end_fill()填充圖形結(jié)束filling()返回填充的狀態(tài),True為填充,F(xiàn)alse為未填充clear()清空當(dāng)前窗口,但不改變當(dāng)前畫筆的位置reset()清空當(dāng)前窗口,并重置位置等狀態(tài)為默認(rèn)值screensize()設(shè)置畫布的長和寬hideturtle()隱藏畫筆的turtle形狀showturtle()顯示畫筆的turtle形狀isvisible()如果turtle可見,則返回Truewrite(str,font=None)輸出font字體的字符串例10-20:修改例10-19,給所繪圖形填充顏色2021/7/3178執(zhí)行結(jié)果:2021/7/3179例10-21:編寫程序模擬時(shí)鐘,要求時(shí)鐘根據(jù)計(jì)算機(jī)系統(tǒng)時(shí)間實(shí)時(shí)動態(tài)更新。2021/7/3180需要建立五個(gè)turtle對象:1個(gè)turtle:繪制外表盤3個(gè)turle:模擬表針行為1個(gè)turtle:輸出表盤上的文字2021/7/3181模擬時(shí)鐘程序過程:2021/7/3182第一步:建立Turtle對象并初始化。表盤繪制Turtle對象文本輸出Turtle對象3個(gè)指針Turtle對象第二步:靜態(tài)表盤繪制第三步:根據(jù)時(shí)鐘更新表針位置和時(shí)間信息說明:需要導(dǎo)入turtle
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025醫(yī)療個(gè)人工作計(jì)劃模板(5篇)
- 電力工程設(shè)備用量及采購計(jì)劃
- 語文知識點(diǎn)鞏固提升計(jì)劃
- 人教版(PEP)四年級英語口語練習(xí)計(jì)劃
- 二年級數(shù)學(xué)教學(xué)計(jì)劃中的多元評價(jià)
- 九年級道德與法治社會實(shí)踐活動計(jì)劃
- 九年級化學(xué)復(fù)習(xí)資料共享平臺計(jì)劃
- 2025年甲乙酮市場深度調(diào)研及發(fā)展戰(zhàn)略咨詢研究報(bào)告
- 簡易員工入股合同協(xié)議
- 2025年中國桶裝蒸餾水行業(yè)市場前景預(yù)測及投資價(jià)值評估分析報(bào)告
- 單片機(jī)實(shí)訓(xùn)室建設(shè)方案
- (整理)龍?zhí)端萝囌尽墩炯?xì)》
- 材料認(rèn)質(zhì)認(rèn)價(jià)單(完整版)
- 市政管線工程施工工藝標(biāo)準(zhǔn)
- 第六章 肝臟病常用的實(shí)驗(yàn)室檢測
- (完整版)20以內(nèi)進(jìn)位退位加減法經(jīng)典口算題
- 冀人版小學(xué)科學(xué)四年級下冊教學(xué)課件 4.11《呼吸》
- 室外雨污水管道施工方案
- 芝麻灰石材檢測報(bào)告
- 特種粉末涂料、粉末涂料弊病的防治
- 《理工英語1》課程導(dǎo)學(xué)PPT課件
評論
0/150
提交評論