![VB中打印機選擇_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/6/7e0fbfbd-8bbf-4059-b696-41a5864094f4/7e0fbfbd-8bbf-4059-b696-41a5864094f41.gif)
![VB中打印機選擇_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/6/7e0fbfbd-8bbf-4059-b696-41a5864094f4/7e0fbfbd-8bbf-4059-b696-41a5864094f42.gif)
![VB中打印機選擇_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/6/7e0fbfbd-8bbf-4059-b696-41a5864094f4/7e0fbfbd-8bbf-4059-b696-41a5864094f43.gif)
![VB中打印機選擇_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/6/7e0fbfbd-8bbf-4059-b696-41a5864094f4/7e0fbfbd-8bbf-4059-b696-41a5864094f44.gif)
![VB中打印機選擇_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/6/7e0fbfbd-8bbf-4059-b696-41a5864094f4/7e0fbfbd-8bbf-4059-b696-41a5864094f45.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、(1)假設(shè)彳的COMMONDIALOG 控件叫CMDiag用如下代碼可以使你選擇的打印機成為默認(rèn)打印機"Printer-On Error Resume NextCMDiag.PrinterDefault = TrueCMDiag.CancelError = TrueCMDiag.ShowPrinterIf Err.Number <> 0 Then Exit Sub(2)VB 里面,原本改變預(yù)設(shè)打印機的方法是:(假設(shè)安裝有兩種打印機(驅(qū)動程式)SetPrinter=Printers(O)'將預(yù)設(shè)打印機設(shè)定成第一種打印機SetPrinter=Printers(1)
2、39;將預(yù)設(shè)打印機設(shè)定成第二種打印機但實際上以上表達(dá)有時候不會成功(原因不詳),為了能夠成功地改變預(yù)設(shè)打印機,以下是呼叫Windows API 的方法:(此一解決方案適用於Windows 95,98)1. API 的宣告:Const HWND_BROADCAST = &HFFFF&Const WM_WININICHANGE = &H1APrivateDeclareFunction GetPro Lib-kernel32- Alias"GetPro"(ByVallpAppName As String,ByVal lpKeyNameAs _String,
3、 ByVal lpDefault As String, ByVal lpReturnedString As String, _ByVal nSize AsLong) AsLongPrivateDeclareFunction WritePro Lib-kernel32- Alias"WritePro" (ByVallpszSection As String, ByVal lpszKeyName _As String, ByVal lpszString As String) As LongPrivate Declare Function SendMessage Lib -use
4、r32" Alias -SendMessageA" _ (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long2. 程式范例:PrinterName ="您想設(shè)定的打印機名稱"Dim S As String, length As Long, hKey As LongS = String(80, Chr(O)length= GetPro("devices",PrinterName, "", S, Len
5、(S)& S)S =Left(S, length)Call WritePro("windows", "device", PrinterName &Call SendMessage(HWND_BROADCAST, WM_WININICHANGE,&H7FFF&, ByVal "windows")至於改變 NT 預(yù)設(shè)打印機的方法,那么是改變登錄資料庫(Registry)打印機的設(shè)定,在登錄資料庫中紀(jì)錄預(yù)設(shè)打印機的Value 是:HKEY_CURRENT_USERSoftwareMicrosoftWindow
6、sNTCurrentVersionWindows subkey 的 Device value(3) VB中獲取指定打印機的各種紙張類型及大小放入一個MSFlexGrid ,名稱為 fgdl ,列數(shù)為4'OptionExplicitPrivateConstDC_MAXEXTENT=5PrivateConstDC_MINEXTENT=4PrivateConstDC_PAPERNAMES16PrivateConstDC_PAPERS= 2PrivateConstDC_PAPERSIZE =3PrivateDeclareFunction DeviceCapabilitiesviceCapabi
7、litiesA"g, ByVal iIndexLib "winspool.drv" Alias "De(ByVal lpDeviceName As String, ByVal lpPort As Strin As Long, lpOutput As Any, lpDevMode As Any) As LongPrivate Type POINTSx As Long y As LongEnd TypePrivate Sub Form_Load()Dim i As LongWith fgdl.Clear.FormatString = "A紙張編號|
8、A紙張名稱|A紙張長度|A紙張寬度" For i = 0 To .Cols -1.ColWidth(i) = 1700 Next i .AllowUserResizing = flexResizeColumns .Left = 0 .Width = Me.ScaleWidth End With GetPaperInfo End Sub Private Sub GetPaperInfo() Dim i As Long, retAs LongDim Length As Integer, Width As Integer Dim PaperNo() As Integer, PaperNam
9、e() As String, PaperSize() As POINTS ,支持最大打印紙:印0&)印0&)ret = DeviceCapabilities(打稱,"LPT1", DC_MAXEXTENT, ByVal 0&, ByVal Length = ret 65536Width = ret - Length * 65536 'lblMaxLength.Caption = Length 'lblMaxWidth.Caption = Width '支持最小打印紙: ret = DeviceCapabilities(打稱,&
10、quot;LPT1", DC_MINEXTENT, ByVal 0&, ByVal Length = ret 65536Width = ret - Length * 65536'支持紙張種類數(shù)ret = DeviceCapabilities(打機稱,"LPT1", DC_PAPERS, ByVal 0&, ByVal 0&)'紙張編號ReDim PaperNo(1 To ret) As IntegerCall DeviceCapabilities(打印機稱,"LPT1", DC_PAPERS, Paper
11、No(1), ByVal 0&)'紙張名稱Dim arrPageName()As ByteDim allNames AsStringDim lStart As Long, lEnd As LongReDim PaperName(1To ret)As StringReDim arrPageName(1 To ret * 64) As ByteCall DeviceCapabilities(打印機稱,"LPT1", DC_PAPERNAMESarrPageName(1), ByVal 0&)allNames = StrConv(arrPageName,
12、vbUnicode)'loop through the string and search for the names of the papers i = 1DolEnd = InStr(lStart+ 1,allNames,Chr$(0),vbBinaryCompare)If (lEnd > 0) And (lEnd- lStart- 1 > 0) ThenPaperName(i) = Mid$(allNames, lStart + 1, lEnd - lStart -1) i = i + 1End If lStart = lEndLoop Until lEnd = 0&
13、#39;紙張尺寸ReDim PaperSize(1 To ret) As POINTSCall DeviceCapabilities(Form2.Combo1.Text, "LPT1", DC_PAPERSIZE, PaperSize( 1), ByVal 0&)顯示在表格中For i = 1 To retfgdl.AddItem PaperNo(i) & vbTab & PaperName(i) & vbTab & PaperSize(i).y & vbTab & PaperSize(i).xNext i'移
14、除第一個空行fgd1.Row = 1fgd1.RemoveItem 1End SubPrivate Sub Form_Resize()With fgd1.Left = 0.Width = Me.ScaleWidth.Height = Me.ScaleHeight.Top = 0End WithEnd Sub(5)編寫VB打印限制程序的幾點心得摘 要 本文在總結(jié)作者實際開發(fā)經(jīng)驗的根底上,詳細(xì)介紹了 VB實現(xiàn)高分辨率打印 方法的幾點心得.闡述了參數(shù)化繪圖程序縮短打印程序開發(fā)時間的方法以及打印機縮 放屬性與窗體屬性匹配使用的技巧,并總結(jié)了解決坐標(biāo)定位、圖形與其實際打印位置出現(xiàn)誤差等問題的經(jīng)驗.關(guān)鍵詞
15、 PrintForm高分辨率打印參數(shù)化繪圖縮放屬性Some Experiences on VB Print ControlBai Yang, Wang PengComputer Science DepartmentUniversity of Information and EngineeringZhengzhou, ChinaAbstract : On the basis of our working experiences, wehave given a detaildescription about VB print method of high resolution.Wefocus on
16、 how to shortendeveloping period with parameterized plot program, the match between the zoom attribute and the attribute of display window etc.,which based on print programof Printer Object. In addition to this, we have introduced some experiences on dealing with position error that caused by the mi
17、smatch between font and graph on screen and that on printer.Keywords : PrintForm, High Resolution Print, parameterized plot, zoomattribute1 .簡介Visual Basic(VB)給用戶提供了可視化編程環(huán)境,因其簡單易學(xué)、功能強大而得到了廣泛的應(yīng)用.VB提供了兩種實現(xiàn)打印的方法.一般在對打印質(zhì)量要求不高的場合,或者 是編程工程的早期開發(fā)過程中,可以直接使用VB窗體的Printform 方法實現(xiàn)打印.用這種方法實現(xiàn)打印具有編程簡單、易用并且功能強大的優(yōu)點,它只
18、需要通過一行代碼,幾乎能打 印所有內(nèi)容.實現(xiàn)的方法就是:首先將要打印的內(nèi)容在屏幕上顯示出來,然后開發(fā)人員只要為窗體對象激活PrintForm ,窗體那么自動將 要打印的內(nèi)容 發(fā)送到Printer對象上,其語法格式如下:窗體.PrintForm .如果窗體中包括圖形,那么打印前應(yīng)先置窗 體白A AutoRedraw屬性為真.這種方法雖然簡單,但是它卻存在著內(nèi)存消耗大、打印粗糙、 速度慢等缺陷,尤其對于帶有滾動條的圖像,這種方法只能打印當(dāng)前可視的區(qū)域.在實際應(yīng)用中經(jīng)常會遇到對打印質(zhì)量要求很高的場合,例如打印 音樂五線譜,對打印的美觀、清楚度以及音符符頭的位置都有很嚴(yán)格的要求,這種應(yīng)用場合假設(shè)采用V
19、B提供的另一種基于 Printer對象的打印方法那么可以獲得高分辨率的打印,得到很高的打印質(zhì)量.在實際應(yīng)用中,也可以根據(jù)實際應(yīng)用情況將上述兩種方法結(jié)合起來使用,即:前期工作使用PrintForm 簡單的打印方法將窗體的布局定下來,后期再使用基于Printer對象的打印方法實現(xiàn)最終的打印工作.2 .高分辨率打印程序開發(fā)心得Printer 對象VB的打印可以使用 Printer對象.Printer對象是一個獨立于打印機設(shè)備的封裝,它 可以代表不同的打印機,初始時,Printer對象為系統(tǒng)缺省的打印機,也可以使用以下語句: Set Printer=Printers(2)( 其中2代表Printers
20、 集中的第二個打印機 )對打印機進(jìn)行指 定.Printer 對象具備例如:ColorMode、Copies、Duplex、Printquality 等限制打印機特征的屬性,提供了 Newpage EndDoc KillDoc等限制打印過程的方法,以及大多數(shù)由窗 體和圖片框控件提供的圖形屬性和方法如:Currentx、Currenty、Textwidth、Textheight、Print、Pset、Line、PaintPicture 和Circle 等方法,它還擁有 Font的所有屬性.實現(xiàn)高 分辨率的打印就是通過限制Printer對象的上述屬性和方法完成的.直接利用 Windows公用標(biāo)準(zhǔn)對話
21、框CommonDialogf空件【打印】VB為用戶提供了 Windows公用標(biāo)準(zhǔn)對話框 CommonDialog控件:【翻開】、【文件另存 為】、【顏色】、【字體】、【打印】. CommonDialog控件在Visual Basic和Microsoft Windows動態(tài)連接庫Commdlg.dll例程之間提供了接口.利用公用標(biāo)準(zhǔn)對話框【打印】開發(fā) VB的打印程序,將大大縮短程序的開發(fā)周期.應(yīng)用程序中要使用公用對話框,必須首先在 工具箱中添加公用對話框控件.該動作通過激活【部件】對話框,選中 Microsoft Common Dialog Control6.0, 單擊【確定】即可.然后再將公用
22、控件添加到窗體上并設(shè)置相應(yīng)屬性, 該控件具有的屬性有 Color、Font、Print、Help等.VB提供mnu ()過程供用戶添加開發(fā)的打印程序代碼.Printer對象限制打印的根本過程利用Printer對象開發(fā)的打印程序主要靠其提供的NewPage 打印新的一頁,CurrentX、CurrentY置為新頁的左上角,可完成多頁功能.、EndDoc 將 打印任務(wù)參加打印機隊列、KillDoc取消打印任務(wù)限制打印過程的.一般情況下,打印程序完成多頁打印時會屢次執(zhí)行NewPage,結(jié)束時執(zhí)行一次EndDoc將打印任務(wù)參加打印機隊列. 如果你在NewPage后,立即使用EndDoc, VB那么不會
23、打印額外的空白頁.如果希望顯示空白頁,那么可在新的一頁上只使用 Printer.Print 打印空字符即可.為了通過Printer對象實現(xiàn)文本和圖形的打印,獲得最好的打印質(zhì)量,還需要 對VB限制打印機的多種屬性有更深入的理解,例如打印機的坐標(biāo)體系向屏幕坐標(biāo)體系的轉(zhuǎn)換、打印機字體尺寸確實定等.下面給出了打印程序的主框架:Private Sub mnuClick On Error Resume NextIf ActiveForm Is Nothing Then Exit SubWith dlgCommonDialog'打印機公用對話框.DialogTitle =" 打印"
24、; .CancelError = True.Flags = 1Printer.FontSize = dlgCommonDialog.FontSize'將打印機公用對話框設(shè)置的字體大小傳遞 給打印機.ShowPrinter'在屏幕上顯示【打印】公用對話框If Err <> MSComDlg.cdlCancel ThenPrinter.FontTransparent = False 不透明SetPrinterScaleMyform的屬性PrintAnywhere Printer 參數(shù)化例程'初始化打印的字體為'匹配打印機的縮放屬性與窗體'可放置用
25、戶編寫的打印對象'實現(xiàn)字符和圖形的顯示Printer.NewPage'打印機坐標(biāo)初始化PrintAnywhere Printer'打印另一頁的內(nèi)容Printer.NewPage'打印機坐標(biāo)初始化Printer.EndDoc'將該任務(wù)參加打印機任務(wù)隊列'不打印空白頁Printer.KillDoc'取消當(dāng)前的打印任務(wù)End IfEnd WithEnd Sub參數(shù)化繪圖程序用VB開發(fā)應(yīng)用程序時,如果使用參數(shù)化繪圖例程進(jìn)行屏幕顯示程序的開發(fā), 那么在開發(fā)打印程序時,就不需再另行開發(fā)代碼,從而防止了大量的重復(fù)勞動,有 效地縮短了程序的開發(fā)周期.參數(shù)
26、化繪圖例程就是:在開發(fā)例程時,為每一個例 行程序提供一個OBJEC底型的參數(shù),調(diào)用程序通過向例程的 OBJEC段型參數(shù)分 別傳遞窗體、Printer對象,就可分別完成屏幕顯示與打印機輸出.見如下示例:Sub PrintAnywhere (Dest As Object )Dest.Print “HELLO!Dest Is Printer ThenPrinter.EndDocEnd IfEnd Sub要完成屏幕上的輸出,調(diào)用PrintAnywhere Myform即可,而調(diào)用PrintAnywhere Printer那么完成在打印機上輸出.屬性匹配與窗體縮放由于限制打印機實際繪圖區(qū)域大小的屬性He
27、ight和Width ,由目前正在使用的紙張決定,而且可打印的區(qū)域與紙張邊緣有一定距離.因而為了獲得正確的打印輸出結(jié)果,不能簡單地將Printer對象直接傳遞給繪圖例行程序,還必須要解 決打印機的縮放屬性與顯示窗體屬性相匹配的問題.即:保證使窗體中的打印 內(nèi)容以正確的大小顯示,并居于可打印區(qū)域的中間.實際上實現(xiàn)的是打印機的坐標(biāo) 體系向屏幕坐標(biāo)體系的轉(zhuǎn)換.具體過程是:使用打印機的ScaleX和ScaleY方法, 獲取以twip為單位的打印機尺寸,再利用窗體的 ScaleX和ScaleY方法將這些 尺寸轉(zhuǎn)換為窗體中的坐標(biāo)系統(tǒng),從而實現(xiàn)以窗體的坐標(biāo)系統(tǒng)提供打印機可打印區(qū) 域大小的目的.然后,用這些尺
28、寸作為打印機中新的 ScaleWidth和ScaleHeight , 即可實現(xiàn)屬性匹配.但是,我們在打印時,經(jīng)常會遇到這樣的場合一一在不改變窗體形狀的情況 下,需要擴大或縮小窗體的大小.要完成這樣的工作,不僅需要完成屬性匹配, 還要確定對象被縮放的系數(shù).程序如下:Private Sub SetPrinterScale(obj As Object)Dim pwid As Single, phgt As Single, xmid As Single, ymid As SingleDim owid As Single, ohgt As Singleowid = obj.ScaleX(obj.Scal
29、eWidth, obj.ScaleMode, vbTwips)ohgt = obj.ScaleY(obj.ScaleHeight, obj.ScaleMode, vbTwips)'獲取窗體以Twips表示的尺寸pwid = Printer.ScaleX(Printer.ScaleWidth, Printer.ScaleMode, vbTwips)phgt = Printer.ScaleY(Printer.ScaleHeight, Printer.ScaleMode, vbTwips)'獲取打印機以Twips表示的尺寸If (ohgt / owid > phgt / pwi
30、d) Thens = phgt / ohgt Elses = pwid / owidEnd If'計算縮放因子pwid = obj.ScaleX(pwid, vbTwips, obj.ScaleMode) / sphgt = obj.ScaleY(phgt, vbTwips, obj.ScaleMode) / s'將打印機的尺寸轉(zhuǎn)換成obj的坐標(biāo)系統(tǒng)/縮放因子x_mid = obj.ScaleLeft + obj.ScaleWidth / 2y_mid = obj.ScaleTop + obj.ScaleHeight / 2'設(shè)置打印區(qū)域的中央點坐標(biāo)Printer.Sc
31、ale (x_mid - pwid / 2, y_mid - phgt / 2)-(x_mid + pwid / 2, y_mid + phgt / 2)'設(shè)置打印機中新的ScaleWidth和ScaleHeightEnd Sub(6)坐標(biāo)定位窗體、圖片框控件以及Printer對象提供的TextWidth和TextHeight方法在 文本定位的應(yīng)用方面很有用.TextWidth、TextHeight分別以對象當(dāng)前的刻度 單位返回字符串的寬度和高度.但是必須注意很多字體中其字符寬度并不全部相 同,所以不能簡單地將單個字符的寬度乘以字符數(shù)來獲得字符串的寬度.對那些沒有TextWidth和T
32、extHeight的控件可通過設(shè)置父窗體的 Font屬性,使其與該 控件的屬性相匹配,再利用父窗體的 TextWidth和TextHeight獲得它的字符串 的寬度和高度.但是,我們在完成屏幕顯示程序調(diào)試后,在進(jìn)行打印輸出時卻出現(xiàn)了屏幕顯 示與打印結(jié)果的不一致性的現(xiàn)象,表現(xiàn)在所打印的字體之間坐標(biāo)關(guān)系與屏幕顯示 不一樣,例如:屏幕顯示上的兩個字符不重疊,而打印出的字符卻出現(xiàn)相互重疊的現(xiàn)象.經(jīng)調(diào)試發(fā)現(xiàn),問題出現(xiàn)在字體尺寸確實定上.程序中,屏幕上顯示的字 符坐標(biāo)是通過對象的TextWidth和TextHeight方法計算得來的,它直接受到字 體尺寸大小的影響.VB向用戶提供的字體是在用戶需要的打印機
33、點的范圍內(nèi),如果你需要的字體大小為73點,那么打印出的實際字體大小為 72.75.然而窗體、 圖片框控件的Fontsize只能是整數(shù),例如它不能將字體的大小定為72.75,實際上這就造成了屏幕上顯示字體與實際打印字體大小之間產(chǎn)生了誤差.我們采用如下方法來解決該問題,就是在計算字體大小時,根據(jù)計算出來的字體尺寸,確 定它存在的范圍,然后再將它定位到 VB提供的幾種固定大小的字體上,而不是 隨意指定.當(dāng)然,也可以有其它的解決方法.例如:字體大小選取偶數(shù)等.由于 篇幅所限,這里不再作介紹.以上是筆者在總結(jié)實際應(yīng)用工作中的一些心得與體會,希望本篇文章能對首 次使用VB開發(fā)打印程序的設(shè)計人員有所幫助.(
34、6)VB中不是有Printers集合嗎寫個For Each循環(huán)就能枚舉Printers集合中的所有打印機Printer 對象和 Printers 集合使用 Printer對象可以實現(xiàn)與系統(tǒng)打印機的通訊(最初是缺省系統(tǒng)打印機).用 Printers集合可獲取有關(guān)系統(tǒng)上所有可用打印機的信息.語法PrinterPrinters(index)index所在處表示從0至UPrinters.Count-1 之間的整數(shù).說明用圖形方法在 Printer 對象上繪制文本和圖形.一旦 Printer 對象中含有將要打印的輸出信息,可 用 EndDoc方法直接將輸出信息送到應(yīng)用程序的缺省打印機上.如果要打印這些信息,應(yīng)該檢查和可能還要修正窗體的布局.例如,如果用 PrintForm方法打印窗體,那么到頁底圖形圖象可能被剪切,而文本那么被移到下一頁.Printers集合可用來查詢可用的打印機,這樣就可以為應(yīng)用程序指定一臺缺省打印機.例
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 制版印刷二用機行業(yè)行業(yè)發(fā)展趨勢及投資戰(zhàn)略研究分析報告
- 汽輪機控制系統(tǒng)項目可行性研究報告
- 數(shù)據(jù)庫項目立項報告
- 中國機動混凝土攪拌車市場供需格局及未來發(fā)展趨勢報告
- 2025年筆墨紙硯行業(yè)深度研究分析報告
- 2025年中國網(wǎng)絡(luò)適配器行業(yè)市場運營現(xiàn)狀及投資方向研究報告
- 特種無縫鋼管項目申請備案可行性研究報告
- 鋼制法蘭項目可行性研究報告
- 半自動燃燒器行業(yè)市場發(fā)展及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 2025年度澳門居民離婚登記與社會保障權(quán)益維護合同
- 二零二五版電商企業(yè)兼職財務(wù)顧問雇用協(xié)議3篇
- 課題申報參考:流視角下社區(qū)生活圈的適老化評價與空間優(yōu)化研究-以沈陽市為例
- 《openEuler操作系統(tǒng)》考試復(fù)習(xí)題庫(含答案)
- T-CISA 402-2024 涂鍍產(chǎn)品 切口腐蝕試驗方法
- 后勤安全生產(chǎn)
- 項目重點難點分析及解決措施
- 挑戰(zhàn)杯-申報書范本
- 北師大版五年級上冊數(shù)學(xué)期末測試卷及答案共5套
- 2024-2025學(xué)年人教版生物八年級上冊期末綜合測試卷
- 2025年九省聯(lián)考新高考 語文試卷(含答案解析)
- 第1課《春》公開課一等獎創(chuàng)新教案設(shè)計 統(tǒng)編版語文七年級上冊
評論
0/150
提交評論