freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

mfc編程基礎(chǔ)教程(參考版)

2025-06-28 20:47本頁面
  

【正文】      (I。 // 變量 w 存放位圖寬度, h 存放高度, I 控制位圖的交替     CBitmap b1,b2。 【】 用定時器控制蝴蝶在窗口中飛舞,如圖所示。其一般形式為:      BOOL KillTimer int nIDEvent )。 撤銷定時器 創(chuàng)建定時器 創(chuàng)建定時器使用 SetTimer 函數(shù)。}     ………………………………………………………… 定時器在Visual C++中可以創(chuàng)建一個時鐘,以一定的時間間隔發(fā)出定時器消息WM_TIMER。 pDCStretchBlt(0,0,w/2,h/2,amp。 (amp。 CDC m。 int w=。 (amp。 (IDB_BITMAP1)。      ASSERT_VALID(pDoc)。 其中: (x,y) 為位圖顯示區(qū)域左上角的坐標; nWidth 和 nHeight 是顯示區(qū)域的寬度和高度; pSrcDC 指向內(nèi)存設(shè)備環(huán)境; (xSrc, ySrc) 為原圖欲顯示區(qū)域左上角的坐標; dwRop 指定復(fù)制方式,常用值為 SRCCOPY ,表示按原圖復(fù)制。 說明: BitBlt 是 CDC 類的成員函數(shù),用于復(fù)制位圖到真正的設(shè)備環(huán)境中。 (5)將位圖從內(nèi)存設(shè)備環(huán)境復(fù)制到真正的設(shè)備環(huán)境中     pDCStretchBlt(0,0,(int)w*f,(int)h*f,amp。     (amp。 // 把位圖的高度賦給h(4)構(gòu)造內(nèi)存設(shè)備環(huán)境,并將位圖裝入該設(shè)備環(huán)境     CDC m。 // 把位圖的大小等信息讀入 bm 中     int w=。 // 說明 bm 為 BITMAP 結(jié)構(gòu)類型的變量     (amp。     (IDB_BITMAP1)。 (2)裝載位圖 裝載位圖就是把應(yīng)用程序位圖資源裝載到一個 Cbitmap 對象中。 【】編一程序 顯示 Windows 主目錄中的 Soap ,如圖所示。CBitmap 是 MFC 中的一個類,它封裝了 Winndows GDI 的位圖處理,其成員函數(shù)主要是裝載和操作位圖。//釋放畫筆資源()。     pDCLineTo(410,10)。      pDCSelectObject(oldpen)。brush)。      (HS_CROSS,RGB(0,255,0))。      pDCEllipse(100,10,200,110)。      pDCMoveTo(10,10)。      oldpen=pDCSelectObject(amp。      // TODO: add draw code for native data here      CPen pen,*oldpen。     …………………………………………………………         void CTESTView::OnDraw(CDC* pDC)     { CTESTDoc* pDoc = GetDocument()。其函數(shù)原形為:     BOOL CreateSolidBrush(COLORREF crColor )。 其中: nIndex 指定了陰影風(fēng)格,其取值見表; crColor 為畫刷的顏色。 // 用新的畫刷畫圓 說明: (1) CreateHatchBrush () 是 CBrush 的成員函數(shù),用于創(chuàng)建畫刷。brush)。 // 定義畫刷對象 brush     (HS_CROSS,RGB(0,255,0))。 CBrush 是 MFC 中的一個類,它封裝了一個 Windows GDI 畫刷,并提供了用于操作畫刷對象的若干方法。 // 選用新的字體     Cbitmap* SelectObject( Cbitmap* pBitmap )。 // 選用新的畫筆     Cbrush* SelectObject( Cbrush* pBrush )。 (2) SelectObject() 是 CDC 類的成員函數(shù),其作用是將一個新的 GDI 對象選入到設(shè)備環(huán)境中,新選用的對象取代原來的對象,然后返回指向原對象的指針。其使用形式為:     BOOL CreatePen( int nPenStyle, int nWidth, COLORREF crColor )。     pDCSelectObject(oldpen)。 // 選用新的畫筆pen ,讓oldpen指向舊的畫筆    pDCMoveTo(10,10)。 // 創(chuàng)建一支紅色能畫實線 3 號粗細的畫筆    oldpen=pDCSelectObject(amp。畫筆的創(chuàng)建和使用過程一般為:    CPen pen, *oldpen。 //設(shè)置新標題 return TRUE。=~FWS_ADDTOTITLE。 cs){ if( !CFrameWnd::PreCreateWindow(cs) ) return FALSE。i++ ) pDCSetPixel(x0+(i/)*()/2,y0sin(step*i)*()/4,RGB(255,0,0))。      for(int i=200。      pDCLineTo(x0,()20)。      pDCLineTo(()20,y0)。      int y0=()/2。      GetClientRect(rect)。      ASSERT_VALID(pDoc)。因為需要使用 sin() 函數(shù),所以在 的開始添加文件包含命令。 pDCTextOut(+10,+10,同舟共濟、自強不息!)。 =+h。 =(()h)/2。a)。 int h=40。 // TODO: add draw code for native data here CRect a,b。 【】改變窗口時,矩形框和文字總是顯示在窗口的中央void CTESTView::OnDraw(CDC* pDC){ CTESTDoc* pDoc = GetDocument()。 獲取客戶區(qū)的大小 使用 Wnd 類的成員函數(shù) GetClientRect 可以將客戶區(qū)的坐標放入一個 CRect 類的對象中,然后調(diào)用成員函數(shù)計算到高度和寬度。     BOOL Ellipse(LPCRECT lpRect)。 畫橢圓     BOOL Rectangle(LPCRECT lpRect)。 說明: ( x,y)或 point 是線段的起點或 終點坐標。     BOOL LineTo(int x, int y)。 形式 :     CPoint MoveTo(int x,int y)。 // 合成淺灰色 ③使用指定顏色 crColor 在坐標 (x,y) 或點 point 處畫一個點,返回用于畫點的顏色。 // 合成深綠色 COLORREF C11=RGB(128, 128, 128)。 // 合成品紅色 COLORREF C9=RGB(0, 0,128)。 // 合成亮黃色 COLORREF C7=RGB(0,255, 255)。 // 合成綠色 COLORREF C5=RGB(0, 0,255)。 // 合成白色  COLORREF C3=RGB(255, 0, 0)。用三種顏色合成一種顏色的函數(shù)是 RGB ,例如:     COLORREF C1=RGB(0, 0, 0) 。與 POINT 類似的是 CPoint 類,兩個數(shù)據(jù)成員也是 x 和 y 。 說明: ① POINT 是 MFC 定義的結(jié)構(gòu)類型,表示平面上的一個點。畫點 形式:     COLORREF SetPixel(int x, int y, COLORREF crColor)。 簡單的文字和圖形輸出 文字輸出 形式:     BOOL TextOut(int x, int y, LPCTSTR lpszString, int nCount)。 InvalidateRect( 矩形 , FALSE) // 矩形區(qū)域內(nèi)原有內(nèi)容保留,再繪制這個區(qū)域。 Invalidate(FALSE) // 窗口原有的內(nèi)容保留,再進行繪制。需要注意的是,不是直接調(diào)用 Ondraw()函數(shù)。 // 檢查 pDoc 是否有效,若無效結(jié)束程序      // TODO: add draw code for native data here     } 說明: OnDraw()函數(shù)有兩種調(diào)方法: ① 自動調(diào)用:當窗口發(fā)生變化視圖需要重新繪制時,應(yīng)用程序會自動調(diào)用該函數(shù)。 初始的 OnDraw()函數(shù)如下:     void CTESTView::OnDraw(CDC* pDC)     { CTESTDoc* pDoc = GetDocument()。 (2) OnDraw() 函數(shù) 在視圖類中, OnDraw() 是一個很重要的成員函數(shù),用于實現(xiàn)輸出。 ② 在 OnDraw函數(shù)中,這個語句是自動生成的。 說明: ① 在不同的應(yīng)用程序中, pDoc 所指向的文檔類對象的名稱是不一樣的。重要成員函數(shù)有:(1) GetDocument() 函數(shù) 該函數(shù)的返回值是指向與當前視圖相關(guān)聯(lián)的文檔對象的指針,因而通過它可以訪問文檔類對象中的公有私有成員。程序開始時會自動調(diào)用該函數(shù)。 3.文檔類 從 CDocument 類派生出來,是應(yīng)用程序進行數(shù)據(jù)定義和初始化的地方 。 2.窗口框架類 從 CMainWnd 派生,提供了一個 SDI 窗口的所有功能,如顯示一個標題、一個菜單欄、一個工具欄等。 (3)忽略工程名的漢字。 (2)如果工程名以數(shù)字開始,則應(yīng)用程序類名由字母 Cmy 、工程名和 App 三部分組成。(一) SDI 應(yīng)用程序框架 1.應(yīng)用程序類 每個應(yīng)用程序類必須從 CWinApp 派生出自己的應(yīng)用程序類,該類封裝了包括初始化、運行和結(jié)束的整個過程,其名稱是 AppWizard 根據(jù)工程名稱自動命名的,規(guī)則如下: (1)如果工程名符合標識符的命名規(guī)則,則應(yīng)用程序類名由字母 C 、工程名和 App 三部分組成。其參數(shù) pDC 指向窗口中央的客戶區(qū)對象,程序使用了客戶區(qū)對象的 Rectangle 和 TextOut 函數(shù)繪制矩形和輸出文字。視圖類中的成員函數(shù)通過它訪問文檔類的公有數(shù)據(jù)成員。pDCTextOut(110,70,pDocs)。      ASSERT_VALID(pDoc)。     }   說明:陰影部分為添加的代碼。      // TODO: add reinitialization code here      // (SDI documents will reuse this document) r=CRect(100,60,260,100)。 (3)在文檔類的成員函數(shù) OnNewDocument() 中完成數(shù)據(jù)成員的初始化。 說明: CRect 是 MFC 定義的一個類,有 4 個數(shù)據(jù)成員: left 、 top 、 right 和 bottom 。 (2)文檔類是存放數(shù)據(jù)的主要地方,本例在其中說明一個存放矩形框數(shù)據(jù)的 CRect 類對象 r 和一個存放字符串的 CString 對象 s ,方法為: 在工作區(qū)的“ ClassView ”中,雙擊 CTESTDoc 類,在該類代碼中添加如下代碼:     public:       CRect r。 【】 創(chuàng)建一個如圖所示的應(yīng)用程序,在窗口中顯示一個矩形框,框中顯示“同舟共濟 自強不息”。 文檔/視圖結(jié)構(gòu)SDI 應(yīng)用程序由 AppWizard 創(chuàng)建好后,即使沒有編寫一行代碼,仍然可以運行,并且具有一個標準 Windows應(yīng)用程序所需要的組成成份,程序員的工作就是往這個框架添加必要的代碼。?? ? ?3. 通過介紹幾種SDI結(jié)構(gòu)的典型應(yīng)用程序來了解其結(jié)構(gòu)及設(shè)計方法,典型應(yīng)用包括:?2. SDI具有文檔/視圖結(jié)構(gòu)的應(yīng)用程序框架,該框架包括應(yīng)用程序類、窗口框架類、文檔類和視圖類,編程的任務(wù)是在文檔類和視圖類中添加適當?shù)拇a。      (m_conb)。      (%d,m_e2)。        if (m_c3) ( 音樂 )。      if (m_c1) ( 旅游 )。      if(IsDlgButtonChecked(IDC_RADIO1))       ( 男 )。 // 用各控件中的值更新對應(yīng)的連接變量      ()。為了不影響其它控件,應(yīng)開始處添加命令:     UpdateData(TRUE)。      UpdateData(FALSE)。      (10)。     BOOL CTESTDlg::OnInitDialog()     {       ┆      // TODO: Add extra initialization here      CheckRadioButton(IDC_RADIO1, IDC_RADIO2, IDC_RADIO1)。其中, m_e2 編輯框設(shè)置為只讀,組合框和列表框取消排序?qū)傩?。單擊“確定”按鈕后,在列表框中顯示選擇的信息。      UpdateData(FALSE)。       m_e2=(%I:%M:%S)。     }     ……………………………………………………
點擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1