mfc課程設(shè)計報告_第1頁
mfc課程設(shè)計報告_第2頁
mfc課程設(shè)計報告_第3頁
mfc課程設(shè)計報告_第4頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、mfc 課程設(shè)計報告學(xué)習(xí)計算機(jī)知識的目的在于更加準(zhǔn)確、快捷的解決現(xiàn)實(shí)生活中的各種問題。我們只有不斷的更新和完善自己的知識、在實(shí)踐中積累經(jīng)驗(yàn),才能做出好的軟件為社會服務(wù),為使用者提供便利。下面是 mfc 課程設(shè)計報告,歡迎參考閱讀!篇一:MFC課程設(shè)計報告1、橡皮筋畫線程序, 要求:利用鼠標(biāo)在視圖上繪制線,能夠設(shè)置線的顏色和寬度;能夠用鼠標(biāo)拾取繪制的某條線,被選中的線能夠高亮顯示,并且彈出對話框,輸入線的屬性保存起來;能夠?qū)⒗L制的線數(shù)據(jù)保存在文本文件中;打開線數(shù)據(jù)文件,可以顯示出文件里面的線圖形。該題需要設(shè)計一個畫線程序,在該程序中需要實(shí)現(xiàn)畫線、設(shè)置線寬、設(shè)置線的顏色、拾取線、拾取線后的特殊屬性

2、、保存線數(shù)據(jù)、打開線數(shù)據(jù)等功能。畫線和拾取線功能都需要靠鼠標(biāo)的左右鍵的信號來實(shí)現(xiàn);設(shè)置線寬和顏色靠對話框輸入,變換數(shù)值;保存和打開線數(shù)據(jù)是存儲的線上各點(diǎn)、 線寬、顏色等屬性,然后在視圖上重繪。該題需要設(shè)計一個畫線程序,用不同的模塊來實(shí)現(xiàn)不同的功能。而這些功能主要是在視圖類中實(shí)現(xiàn):畫線和拾取線功能都需要靠鼠標(biāo)的左右鍵的信號來實(shí)現(xiàn);設(shè)置線寬和顏色靠對話框輸入,變換數(shù)值;保存和打開線數(shù)據(jù)是存儲的線上各點(diǎn)、線寬、顏色等屬性,然后在視圖上重繪。除此之外,還要設(shè)置其他的類來保存數(shù)據(jù)。1、由于畫線和提取線的功能都是靠鼠標(biāo)的信息來確定的,故需設(shè)定一個成員變量來確定鼠標(biāo)的狀態(tài),設(shè)定成員變量為 m_Get 來判斷

3、是進(jìn)行畫線操作還是提取線操作。2、畫線功能靠鼠標(biāo)左鍵的down、up 和 mousemove 信息來傳遞給函數(shù)來實(shí)現(xiàn)畫線,其各自的函數(shù)為OnLButtonDown、OnLButtonUp 、OnMouseMove實(shí)質(zhì)上是記錄下了各點(diǎn), 成員變量為起點(diǎn) m_startPoin 和終點(diǎn) m_endPoint 。再增加了鼠標(biāo)移動響應(yīng)函數(shù) OnMouseMove后,必須是鼠標(biāo)按下去之后才開始繪圖,因此,添加一個變量來表示鼠標(biāo)左鍵是否按下去這一狀態(tài)。于是,為視圖類添加一個 BOOL型的私有變量成員 m_bPaint ,當(dāng)鼠標(biāo)左鍵按下去時,此變量為真;當(dāng)鼠標(biāo)左鍵彈起來時,此變量為假;于是在視圖類構(gòu)造函數(shù)中

4、, m_bPaint=FALSE ; 在 視 圖 類 函 數(shù) OnLButtonDown 中 ,m_bPaint=TRUE;在視圖類函數(shù)OnLButtonUp 中, m_bPaint=FALSE。這時在函數(shù) OnMouseMove中通過判斷m_bPaint 是否等于 TRUE來確定畫線。3、提取線功能也是靠鼠標(biāo)左鍵的down、up 和 mousemove信息來傳遞給函數(shù)實(shí)現(xiàn)提取線的功能的。由于在鼠標(biāo)點(diǎn)擊線的過程中有可能存在誤差,不能準(zhǔn)確的點(diǎn)到線條,因此應(yīng)該在提取線時鼠標(biāo)點(diǎn)擊只要在線條附近就可以,故必須計算兩個點(diǎn)之間的距離,當(dāng)這個距離在允許的誤差范圍內(nèi)時,就實(shí)現(xiàn)提取線的功能。為此,另建一個函數(shù)G

5、ettingfunction來確定鼠標(biāo)點(diǎn)擊是否在誤差范圍內(nèi)。另一方面,提取線時要把線的屬性更改為高亮顯示,這時需將畫筆的屬性改掉,來突出顯示選中的線。除此之外,在選中線后還要彈出對話框,輸入線的屬性,并保存下來,這時在函數(shù) Gettingfunction中添加彈出對話框的指令。4、保存線數(shù)據(jù)是通過菜單項(xiàng)確定,然后彈出對話框,記錄數(shù)據(jù)的名字,把線的屬性儲存起來,并不是保存了一條線。同理,打開線數(shù)據(jù)通過菜單項(xiàng)確定,彈出對話框,輸入要打開的文件名, 然后提取出線的屬性,然后在試圖上重繪,就得到了原來保存的線數(shù)據(jù)。1、首先確定菜單項(xiàng),除去原有的菜單項(xiàng)后,包括線的操作和線的保存和打開,關(guān)系為:2、確定菜

6、單項(xiàng)各自對應(yīng)的對話框:、線屬性對話框:其中寬度對應(yīng)的成員變量為m_nLineWidth ,顏色分別為m_red、m_green、m_blue ,通過輸入值傳遞給函數(shù)。并建立了類Dlg ,初始化各成員變量。、提取線后彈出的對話框:彈出對話框后,分別輸入寬度、顏色保存起來。 為其建立類CSave,實(shí)現(xiàn)提取線并保存。保存和打開線數(shù)據(jù)的對話框:在編輯框中輸入文件名,存儲或打開線數(shù)據(jù)。為其建立類CFileDat ,實(shí)現(xiàn)存儲或打開線的數(shù)據(jù)功能。篇二: c+(MFC)程序設(shè)計實(shí)踐報告學(xué)時: 40學(xué)分: 2計算機(jī)實(shí)踐是本科計算機(jī)基礎(chǔ)教學(xué)的一個重要環(huán)節(jié)。它對于鞏固學(xué)生的計算機(jī)基礎(chǔ)知識,增強(qiáng)學(xué)生的計算機(jī)應(yīng)用水平,

7、改善學(xué)生的知識結(jié)構(gòu),具有重要意義。用 C+語言編程。編程題目如下:輸入每個學(xué)生的學(xué)號和 6 門課程的成績。計算每個學(xué)生的平均分和總分。按總分從高到低排出名次,并按名次輸出每個學(xué)生的情況,包括學(xué)號、各科成績、平均分和總分。根據(jù)用戶要求輸出某門課程成績在90 分以上且總分在前 5 名的學(xué)生情況,包括學(xué)號、各科成績、平均分和總分。(5) 根據(jù)統(tǒng)計,繪制總成績五分制百分比餅圖。 ( 自學(xué)利用 C+提供的庫函數(shù)繪制曲線圖 ) 。要求:利用類來實(shí)現(xiàn),學(xué)生學(xué)號和成績采用文件輸入,排序。 數(shù)據(jù)的組織可采用對象數(shù)組 。查閱相關(guān)資料并寫出系統(tǒng)設(shè)計說明書。寫出實(shí)踐報告。輸入每件商品的名稱,編號,入庫日期,標(biāo)價,成本

8、。輸入每件商品的售價,出售日期。按總銷售量從高到低排出每種商品的名稱,售出件數(shù),銷售額。根據(jù)用戶要求輸出某商品某月的平均售價、售出件數(shù)、總利潤。(5)根據(jù)統(tǒng)計,繪制商品銷售利潤百分比餅圖。(自學(xué)利用 C+提供的庫函數(shù)繪制曲線圖) 。要求:利用類實(shí)現(xiàn),數(shù)據(jù)采用文件輸入,排序。數(shù)據(jù)的組織可采用對象數(shù)組。查閱相關(guān)資料并寫出系統(tǒng)設(shè)計說明書。寫出實(shí)踐報告。輸入每場比賽的主隊(duì)名稱,客隊(duì)名稱,比賽日期,主隊(duì)得分,客隊(duì)得分。按總得分從高到低排出每個隊(duì)的名稱,總得分,勝,和,負(fù)的次數(shù)。根據(jù)用戶要求輸出某隊(duì)某月的所有比賽數(shù)據(jù)。根據(jù)用戶要求輸出某隊(duì)主場總得分,客場總得分(5) 根據(jù)用戶輸入,繪制某隊(duì)成績歷史趨勢圖。

9、 ( 自學(xué)利用 C+提供的庫函數(shù)繪制曲線圖 ) 。要求:利用類實(shí)現(xiàn),數(shù)據(jù)采用文件輸入,排序。 數(shù)據(jù)的組織可采用對象數(shù)組 。查閱相關(guān)資料并寫出系統(tǒng)設(shè)計說明書。寫出實(shí)踐報告。輸入每件稿件的第一作者名字,稿件名稱,投稿日期,作者的省份。輸入每件稿件的發(fā)表日期,審稿意見。按作者的省份,從高到低排出每個省的總發(fā)表篇數(shù)。根據(jù)用戶要求輸出某作者某月的所有稿件數(shù)據(jù)。(5) 根據(jù)用戶輸入, 繪制稿件按省份的百分比餅圖。 ( 自學(xué)利用C+提供的庫函數(shù)繪制曲線圖) 。要求:利用類實(shí)現(xiàn),數(shù)據(jù)采用文件輸入,排序。數(shù)據(jù)的組織可采用對象數(shù)組。查閱相關(guān)資料并寫出系統(tǒng)設(shè)計說明書。寫出實(shí)踐報告。輸入每個電表的用戶名,樓棟號,抄表

10、日期,電表讀數(shù)。按作者的用電量,從高到低排出每個用戶的總用電量。根據(jù)用戶要求輸出某用戶某月的總用電量。(4) 統(tǒng)計某樓棟從某月到某月 ( 從鍵盤輸入 ) 的總用電量(5) 繪制按的樓棟的用電百分比餅圖。( 自學(xué)利用 C+提供的庫函數(shù)繪制曲線圖 ) 。要求:利用類實(shí)現(xiàn),數(shù)據(jù)采用文件輸入,排序。 數(shù)據(jù)的組織對象數(shù)組。查閱相關(guān)資料并寫出系統(tǒng)設(shè)計說明書。寫出實(shí)踐報告。以上五題任選一題。學(xué)生除了要遵守實(shí)踐期間學(xué)院的基本規(guī)定外,還要求做到:1必須在規(guī)定的時間、地點(diǎn),獨(dú)立完成以上任務(wù);2不得遲到、早退。尤其不得擅自缺席。1 任務(wù)書必須作為報告第一頁2 報告不得少于 3000 字:主要總結(jié)實(shí)踐心得、實(shí)踐成果 、程序功能、設(shè)計思路、源程

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論