Visual C++程序設(shè)計(jì)-期末試題及答案_第1頁
Visual C++程序設(shè)計(jì)-期末試題及答案_第2頁
Visual C++程序設(shè)計(jì)-期末試題及答案_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

VisualC++程序設(shè)計(jì)-期末試題及答案15MFC()組成?;A(chǔ)類庫、全局函數(shù) B.基礎(chǔ)類庫、全局變量、宏C.基礎(chǔ)類庫、全局函數(shù)、宏D.基礎(chǔ)類庫全局函數(shù)全局變量和宏應(yīng)用程序?qū)ο驝ProgramApp是程序執(zhí)行的最重要部分,( )由其完成。程序的初始化、運(yùn)行和結(jié)束工作 B。消息的發(fā)送和執(zhí)行C.程序的框架、窗口 D。事件的發(fā)生與處理CWinApp()析,并發(fā)送到相應(yīng)的窗口進(jìn)行處理。A.Run BCreate CTranslateMessageDDispatchMessage對于在屏幕上的繪制,通常使用()設(shè)備上下文,則使用()對象來完成。ACDCCWindowsDC BCWindowsDC,C.CWindowsDC,CPaintDC D。CDC,CPaintDC(對象表示相對的距離的尺寸,()對象表示一個矩形區(qū)域。類類類 CSize類類,CRect類類類類 DCPoint類類,CRect類二、填空題(每空1分,共20分)消息是應(yīng)用程序初始化時(shí),Windows條消息。 間間隔周期性執(zhí)行。對話框是由一個特殊的、可以接收消息,它具有 的基本特性。對話框主要由兩部分組成。VisualC++6.0集成開發(fā)環(huán)境中提供的資源 等。CGdiObject及其派生類封裝了Windows提供的繪圖工等。文檔是數(shù)據(jù)的載體,管理及維護(hù)數(shù)據(jù),支持并實(shí)現(xiàn)數(shù)據(jù)的 操作。視圖是數(shù)據(jù)的表現(xiàn),視圖實(shí)現(xiàn)了數(shù)據(jù)的 ,并對數(shù)據(jù)的 提供了支持。三、簡答題(30分)1MicrosoftWindowsMFC?(102?(5CRect,CPointCSize(5CEx06aDialogDoModal的一系列動作?(10

四、編程題(共45分)如何判斷一個點(diǎn)(CPointpoint)是否在橢圓內(nèi),橢圓的外接矩形為CRectm_rectEllipse,請寫出相應(yīng)的代碼?(10分)如果Cat類中包含三個數(shù)據(jù)成員,如下所示:(10分)public:CStringm_strName;int m_nHeight;int m_nWeight如何編寫Cat類的Serialize函數(shù)?voidCat::Serialize(CArchive&ar){……}3IDIDC_STATIC1灰色的圓?(10)voidCMyDialog::OnPaint(){……}如何在視圖類的成員函數(shù)中對狀態(tài)欄的第一個窗格里面寫入:”IloveVC++!”?(5分)編程實(shí)現(xiàn)在視圖(CMyView)中點(diǎn)擊鼠標(biāo)左鍵彈出一個無模式對話框(CMyDialogOKWM_GOODBYE,然后視圖(10)一、選擇題(每題1分,共5分1D 2A 3A 4B 5D二、填空題(每空1分,共20分)1.WM_CREATE 2.WM_TIMER3.窗口,窗口 4。對話框資源,對話框類對話框,菜單,加速鍵,字符串表,位圖,圖標(biāo),光標(biāo)位圖,筆,畫刷,字體三、簡答題(30(10分) 1) Windows將程序裝入內(nèi)存.構(gòu)造全局對象theApp.立刻被創(chuàng)建.)WindowsWinMain,它是類庫的一部分.(WinMainWindowsmain程序的入口點(diǎn).)WinMainCWinAppWinMain調(diào)用theApp的InitInstance程序派生類中被重載.InitInstance視圖窗口的顯示處理過程.WinMaintheAppRun令消息的分發(fā)處理過程.(5盤,而當(dāng)程序重啟時(shí)它們又可恢復(fù).對象的這種存盤和恢復(fù)過程就稱為”序列化”.3(5分)CRect left,top,right,CPoint x,yCSize cx,cy4(10分)CDialog::DoModalCEx06aDialog::OnInitDialog…其他的初始化…CDialog::OnInitDialogCWnd::UpdateData(FALSE)CEx06aDialog::DoDataExchange用戶輸入數(shù)據(jù)…OKCEx06aDialog::OnOK…其他的確認(rèn)處理…CDialog::OnOkCWnd::UpdateData(TRUE)CEx06aDialog::DoDataExchangeCDialog::EndDialog(IDOK)451(10)CRgnrgn;rgn.CreateEllipticRgnIndirect(m_rectEllipse);if(rgn.PtInRegion(point)){…}2(10分)if(ar.IsStoring()){ar<<m_strName<<m_nHeight<<m_nWeight;}else{ar>>m_strName>>m_nHeight>>m_nWeight}3(10分)CWnd*pWnd=GetDlgItem(IDC_STATIC1);CDC*pControlDC=pWnd->GetDC();pWnd->Invalidate();pWnd->UpdateWindow();pControlDC->SelectStockObject(GRAY_BRUSH);pControlDC->Ellipse(CRect(0,0,10,10));4(5分)CMainFrame*pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;

CStatusBar*pStatus=&pFrame->m_wndStatusBar;pStatus->SetPaneText(0,”IloveVC++!”);5(10分)1)在CMyDialog.h中,加入用戶自定義消息#defineWM_GOODBYEWM_USER+5和以下成員:private:CView*m_pView;public:CMyDialog(CView*pView);BOOLCreate();2)在CMyDialog.cpp中,加入CMyDialog::CMyDialog(CView*pView)//modelessconstructor{m_pView=pView;}BOOLCMyDialog::Create(){returnCDialog::Create(CMyDialog::IDD);}voidvoidCMyDialog::OnOK() //notreallyahandler{if(m_pView!=NULL){//modelesscase--donotcallbaseclassUpdateData(TRUE);m_pView->PostMessage(WM_GOODBYE,IDOK);}else{CDialog::OnOK();//modalcase}}3)在CMyView.h中,加入classCMyDialog;private:CMyDialog*m_pDlg;afx_msgLRESULTOnGoodbye(WPARAMwParam,LPARAMlParam);4)在CMyView.cpp中,加入CMyView::CMyView(){m_pDlg=newCMyDialog(this);}CMyView::~CMyView(){deletem_pDlg;//destroyswindowifnotalreadydestroyed}voidCMyView::OnDraw(CDC*pDC){pDC->TextOut(0,0,"Presstheleftmousebuttonhere.");}voidCMyView::OnLButtonDown(UINTnFlags,CPointpoint){//createsthedialogifnotcreatedalreadyif(m_pDlg->GetSafeHwnd()==0){m_pDlg->Create();//displaysthedialogwindow}}#include"MyDi

溫馨提示

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

評論

0/150

提交評論