




已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
孫乾程 10104060218 計科102班實驗二 使用MFC進行可視化編程中的標準控件實驗目的 熟悉使用Windows控件,使用MFC進行基于對話框的可視化程序設計。同時,掌握使用MFC和向導來編寫Windows應用程序。控件是Windows圖形用戶界面的主要組成部分之一,用戶通過操作控件對象完成與應用程序之間的交互。本實驗要求通過對控件相關知識的學習,目的是要掌握靜態(tài)控件、按鈕、流動條、編輯框、列表框、組合框和對話框的創(chuàng)建、消息發(fā)送和控件控制等內(nèi)容。實驗原理利用Visual C+ 6.0開發(fā)環(huán)境,對實驗所要求的程序設計項目,編輯C語言源程序并形成 .cpp 源代碼文件,再編譯.cpp 文件形成 .boj 目標代碼文件,經(jīng)過.boj文件與系統(tǒng)標準代碼的連接形成 .exe 可執(zhí)行代碼文件,運行.exe文件以得到實驗所期望的結果。實驗要求(1)掌握MFC類的層次結構及主要類的用法;(2)使用應用程序向導創(chuàng)建MFC類的Windows應用程序;(3)使用靜態(tài)控件、按鈕、流動條、編輯框、列表框、組合框和對話框等創(chuàng)建應用程序。實驗環(huán)境硬件環(huán)境:奔3以上處理器,512MB以上內(nèi)存空間;軟件環(huán)境:windows2000以上操作系統(tǒng),VC6.0編譯環(huán)境。實驗內(nèi)容1. 按下面界面設計程序界面。在上面的編輯框中填上姓名,當點擊得到數(shù)據(jù)屬性按鈕就得到下面文字。左下方通過滾動條可以設置靜態(tài)框的顏色。右下面有四個按鈕。“得到數(shù)據(jù)屬性”按鈕源代碼:void CTest91Dlg:OnButton1() / TODO: Add your control notification handler code herethis-UpdateData();CString sexStr,scoreStr,classStr;if(m_radio1=0) sexStr=男;else sexStr=女;if(m_radio2=0) scoreStr=及格;else scoreStr=不及格;if(m_check1=TRUE) classStr=一班;if(m_check2=TRUE) classStr=二班;if(m_check3=TRUE) classStr=四班;if(m_check4=TRUE) classStr=三班;m_edit1=m_edit2+sexStr+ +scoreStr+ +classStr; this-UpdateData(FALSE);“水平滾動條”源代碼:void CTest91Dlg:OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) / TODO: Add your message handler code here and/or call defaultint iNum=pScrollBar-GetScrollPos();if(nSBCode=SB_LINELEFT) pScrollBar-SetScrollPos(iNum-1);if(nSBCode=SB_LINERIGHT) pScrollBar-SetScrollPos(iNum+1);if(nSBCode=SB_PAGELEFT) pScrollBar-SetScrollPos(iNum-10);if(nSBCode=SB_PAGERIGHT) pScrollBar-SetScrollPos(iNum+10);if(nSBCode=SB_THUMBPOSITION) pScrollBar-SetScrollPos(nPos);if(nSBCode=SB_THUMBTRACK) pScrollBar-SetScrollPos(nPos);InvalidateRect(NULL,FALSE); UpdateWindow();CDialog:OnHScroll(nSBCode, nPos, pScrollBar);“顏色控制”源代碼:HBRUSH CTest91Dlg:OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) HBRUSH hbr = CDialog:OnCtlColor(pDC, pWnd, nCtlColor);/ TODO: Change any attributes of the DC hereif(pWnd-GetDlgCtrlID()=IDC_STATIC_COLOR)BYTE red=m_scollred.GetScrollPos();BYTE green=m_scollgreen.GetScrollPos();BYTE blue=m_scrollblue.GetScrollPos(); HBRUSH m_brush=CreateSolidBrush(RGB(red,green,blue);return m_brush;/ TODO: Return a different brush if the default is not desiredreturn hbr;點擊最上面按鈕結果如下把所有左面的字符串交到右面?!啊卑粹o源代碼:void CTest91Dlg:OnButton2() / TODO: Add your control notification handler code herefor(int i=0;im_List1.GetCount();i+)CString sd;m_List1.GetText(i,sd);m_List2.AddString(sd);m_List1.ResetContent();點擊最下面一個按鈕把所有左面的字符串交到右面。結果如下圖所示。當點擊第二個按鈕把一個選中的數(shù)據(jù)放到右面。點擊第三個按鈕可以把右面一個選中的數(shù)據(jù)放到左面。2. 建立以下對話框有四個選項卡分別是編輯框,進度條,滑動條和樹型控件。CTest92Dlg中OnSelchangeTab函數(shù)源代碼:void CTest92Dlg:OnSelchangeTab(NMHDR* pNMHDR, LRESULT* pResult) / TODO: Add your control notification handler code hereint nCurSel=m_tab.GetCurSel();switch(nCurSel)case 0:d1.ShowWindow(SW_SHOW);d2.ShowWindow(SW_HIDE);d3.ShowWindow(SW_HIDE);d4.ShowWindow(SW_HIDE);break;case 1:d1.ShowWindow(SW_HIDE);d2.ShowWindow(SW_SHOW);d3.ShowWindow(SW_HIDE);d4.ShowWindow(SW_HIDE);break;case 2:d1.ShowWindow(SW_HIDE);d2.ShowWindow(SW_HIDE);d3.ShowWindow(SW_SHOW);d4.ShowWindow(SW_HIDE);break;case 3:d1.ShowWindow(SW_HIDE);d2.ShowWindow(SW_HIDE);d3.ShowWindow(SW_HIDE);d4.ShowWindow(SW_SHOW);break;*pResult = 0;進度條中的“時間控制”源代碼:void CDialog2:OnTimer(UINT nIDEvent) / TODO: Add your message handler code here and/or call defaultm_progress.StepIt();if (m_progress.GetPos()=100)KillTimer(1);m_progress.SetPos(0);CDialog:OnTimer(nIDEvent);其中上部編輯框為數(shù)字,從0-100。下邊一個是下拉框,下拉框的的數(shù)據(jù)是1,2,3,4。通過下拉下拉菜單可以設置編輯框進度條選項卡中存在進度條和一個按鈕。點擊這個按鈕進度條每隔一秒鐘就前進一格。當?shù)竭M度條盡頭時進度條歸零并停止?;瑒訔l的范圍為0-10在屬性控件中存在樹型控件和list控件。出現(xiàn)的問題及解決方法(1)UpdateData()函數(shù)是用來刷新數(shù)據(jù)的。UpdateData(TRUE) :刷新控件的值到對應的變量;UpdateData(FALSE):拷貝變量值到控件顯示;(2)GetWindowText函數(shù)原型:Int GetWindowText(HWND hWnd,LPTSTR lpString,Int nMaxCount);其中IpString是指向接收文本的緩沖區(qū)的指針,本題中需要調(diào)用該函數(shù)將四則運算符號拷貝到緩沖區(qū)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 巖棉在火災防護中的作用與挑戰(zhàn)
- 工業(yè)4.0下的智能制造與管理
- 少數(shù)民族地區(qū)旅游資源開發(fā)利用分析報告
- 小組合作學習在教學中的應用研究
- 展覽會設計與搭建打造視覺沖擊的展臺
- 展會設計與視覺營銷策略
- 小學語文朗讀教學中的問題與對策
- 少兒教育市場潛力及運營策略
- 小紅書美妝產(chǎn)品營銷案例研究
- 小學英語語法知識要點
- 車輛收費及管理制度
- T/CAS 612-2022碳中和管理體系要求
- 《國有資產(chǎn)管理》課件
- 苗木采購管理規(guī)章制度
- 化石吟主題知識講座
- 產(chǎn)能置換相關政策梳理
- 小兒清熱止咳口服液產(chǎn)品知識-課件
- 園林綠化工程設計招標文件案例
- 附件9:未取得國外國籍的聲明
- 2022版義務教育語文課程標準(2022版含新增和修訂部分)
- 幼兒園課件:《鉛筆不能咬》
評論
0/150
提交評論