• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    任務驅動的Windows應用程序設計教學實例

    2018-09-13 11:22:00唐小勇
    電腦知識與技術 2018年17期
    關鍵詞:任務驅動教學法

    唐小勇

    摘要:任務驅動是一種有效的教學方法,在計算機程序設計類課程教學中具有廣泛應用。本文將通過實例方式介紹任務驅動式教學法在Windows應用程序設計課程中的應用。論文首先提出隨鼠標移動的動態(tài)多彩文字程序設計任務特性,以此為驅動介紹鼠標事件、鼠標位置、文字動態(tài)與彩色效果等Windows 程序實現(xiàn)機制及技巧,最終編程實現(xiàn)此任務。實際教學效果表明此法能有效提高學生的應用程序設計能力。

    關鍵詞:任務驅動教學法;Windows API函數(shù);事件處理

    中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2018)17-0173-02

    任務驅動教學法是一種開放式、互動式、目的性與針對性強的教學形式[1]。為實現(xiàn)相應任務,要求學生充分發(fā)揮個體主觀能動性和創(chuàng)造性,使學生在主體認知和獲取知識過程中自然融入教學主導者創(chuàng)立的教學環(huán)境中,從而達到知識的主動獲取、理解與消化[2]。本文將從Windows應用程序設計課程教學為研究對象,探討隨鼠標移動的動態(tài)多彩文字程序設計任務的特性、教學知識點和難點。以此任務為驅動,介紹鼠標事件、鼠標位置、文字動態(tài)與彩色效果實現(xiàn)的Windows 程序實現(xiàn)機制及技巧。以期提高學生的應用程序設計能力。

    1 動態(tài)多彩文字任務

    本課任務是利用Windows API函數(shù)實現(xiàn)隨鼠標移動的動態(tài)多彩文字,其效果如圖1。程序設計任務要求在Windows Visual Studio集成開發(fā)環(huán)境中利用WIN 32項目來實現(xiàn),其標題為動態(tài)多彩文字。主要效果為鼠標在Windows窗口中隨意移動,文字也跟著移動,文字顏色要求動態(tài)變化。

    2 主要知識點介紹

    1)鼠標事件及鼠標位置。本任務中涉及使用鼠標,因而要求學生掌握鼠標事,主要包括WM_LBUTTONDOWN:產(chǎn)生單擊鼠標左鍵的消息;WM_LBUTTONUP:放開鼠標左鍵時產(chǎn)生;WM_RBUTTONDOWN:單擊鼠標右鍵時產(chǎn)生;WM_RBUTTONUP:放開鼠標右鍵時產(chǎn)生;WM_LBUTTONDBLCLK:雙擊鼠標左鍵時產(chǎn)生;WM_RBUTTONDBLCLK:雙擊鼠標右鍵時產(chǎn)生;WM_MOUSEMOVE:鼠標移動等。

    其次,本程序的文字隨鼠標移動而移動,因而必須確定鼠標位置。一種方法是利用鼠標事件,其中參數(shù)lParam低字節(jié)包含當前光標的X坐標值,用LOWORD(lParam)實現(xiàn);高字節(jié)包含當前光標的Y坐標值,用HIWORD(lParam)編程。鼠標事件wParam包含整數(shù)值以標識鼠標鍵的按鍵狀態(tài),其中MK_LBUTTON為按下鼠標左鍵;MK_MBUTTON鼠標中鍵;MK_RBUTTON為鼠標右鍵。鼠標位置的第二種方法是利用Windows API函數(shù)BOOL GetCursorPos(LPPOINT lpPoint),其中l(wèi)pPoint為包含X軸和Y軸坐標值的結構體指針。此函數(shù)獲取光標的位置通常以屏幕坐標形式給出,但不受包含該光標所在窗口映射模式所造成的影響。

    2)文字動態(tài)效果。這里需要定時器進行動態(tài)顯示,因而課程教學需要講解定時器程序設計基本方法,如圖2所示。應用程序首先在WM_CREATE消息事件中利用Windows API函數(shù)UINT_PTR SetTimer(HWND hWnd, UINT_PTR nIDEvent, UINT nElapse, TIMERPROC lpTimerFunc)設置時間間隔為nElapse毫秒的定時器。如nElapse=200,即定時器每隔0.2秒發(fā)出一條WM_TIMER消息事件。WM_TIMER事件處理主要調用InvalidateRect API函數(shù)發(fā)出WM_PAINT消息事件,要求系統(tǒng)重新刷新用戶區(qū),從而實現(xiàn)文字的動態(tài)顯示效果。

    3)文字彩色效果。Windows應用程序使用宏RGB定義繪圖顏色,其形式為RGB(nRed, nGreen,nBlue)。如藍色值,RGB(0,0,255)。本程序為實現(xiàn)各種動態(tài)色彩,聲明顏色數(shù)組int color[11],并使用文本前景色設置API函數(shù)COLORREF SetTextColor( _In_ HDC hdc,_In_ COLORREF crColor)。本程序具體多彩文字效果用SetTextColor(hdc,RGB(255-color[i],color[i],255))實現(xiàn)。

    3 編程實現(xiàn)

    本任務效果主要在WM_PAINT消息事件處理中實現(xiàn)。程序首先利用API函數(shù)GetCursorPos(&pt;)獲得當前光標位置,利用for(i=0;i<11;i++){x[i]=pt.x+(i-1)*40;y[i]=pt.y;}循環(huán)實現(xiàn)每個文字初始顯示位置的設定。動態(tài)顯示過程中各文字的相互關系是前顯示文字位置變?yōu)楹罄m(xù)顯示文字位置,主要實現(xiàn)技術是如下所示的for循環(huán)for(i=10;i>1;i--){x[i]=x[i-1]+40; y[i]=y[i-1];}。最終文字顯示的關鍵代碼為for(i=1;i<11;i++){SetTextColor(hdc,RGB(255-color[i],color[i],255));TextOut(hdc,x[i],y[i],&str;[i],1);}。以此實現(xiàn)本文所提出的動態(tài)多彩文字。

    4 小結

    本文通過動態(tài)多彩文字Windows應用程序設計任務介紹任務驅動教學的任務設計、教學內容和教學方法,實際教學效果比填鴨式的講授法有明顯進步,學生實際反映教學效果較好。

    參考文獻:

    [1] 劉紅梅.任務驅動式案例教學法的構建與應用[J].江蘇高教,2016 (4):71-73.

    [2] 賀桂英.基于任務驅動和MOOC學習的開放大學教師研修模式探索與研究[J]. 高教探索,2016 (1):120-123.

    猜你喜歡
    任務驅動教學法
    醫(yī)院中藥制劑教學初探
    任務驅動教學法在電大課程教學中的應用淺析
    任務驅動教學法在高中作文教學中的幾點嘗試
    任務驅動教學法在軍械士官大?!皺C械基礎”課程中的具體實施
    求知導刊(2016年30期)2016-12-03 10:44:28
    任務驅動教學法在成人教育中的運用分析
    項目教學法在建設項目LCM課程實訓中的創(chuàng)新應用
    價值工程(2016年29期)2016-11-14 02:44:24
    任務驅動教學法在C 語言教學中的應用研究
    軍械士官《機械基礎》任務驅動教學方法研究
    考試周刊(2016年71期)2016-09-20 07:08:40
    任務驅動教學法在高中物理教學中的運用
    考試周刊(2016年58期)2016-08-23 07:19:50
    《基礎護理學》教學中運用任務驅動教學法的實踐分析
    考試周刊(2016年31期)2016-05-30 19:56:58
    额敏县| 文山县| 新巴尔虎左旗| 临武县| 旬阳县| 博客| 临漳县| 莱西市| 云霄县| 驻马店市| 温泉县| 景谷| 大关县| 勐海县| 潮安县| 定结县| 芦山县| 南平市| 东乡族自治县| 德令哈市| 温宿县| 宜兰市| 太和县| 曲沃县| 白银市| 安远县| 临沧市| 灵寿县| 江北区| 天峻县| 汝阳县| 逊克县| 英吉沙县| 历史| 嵊州市| 泰和县| 布拖县| 三河市| 綦江县| 米林县| 郎溪县|