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

正文內(nèi)容

windows是一個圖形操作系統(tǒng),其所有的圖形可視效果都是通-文庫吧資料

2024-09-09 14:21本頁面
  

【正文】 hView::OnDraw(CDC* pDC) { CMyGraphDoc* pDoc = GetDocument()。 Ellipse 根據(jù)指定的矩形繪制一個內(nèi)切橢圓 Arc 根據(jù)指定的矩形繪制內(nèi)切橢圓上的一段弧邊 ArcTo 該函數(shù)功能與 Arc函數(shù)相同 , 不同之處在于畫弧成功后 Pie 繪制扇形 Chord 繪制弦形 , 弦形是一條橢圓弧和其對應的弦所組成的封閉圖形 。 PolyBezier 根據(jù)兩個端點和兩個控制點繪制貝濟埃 ( Bezier) 曲線 。 繪制基本圖形 函 數(shù) 功 能 SetPixel 用指定的顏色在指定的坐標畫一個點 MoveTo 移動當前位置到指定的坐標 , 函數(shù)返回以前位置的坐標 。 ? GDI為提供了繪制基本圖形的成員函數(shù) , 這些函數(shù)封裝在 MFC的 CDC類中 。 (400,210,600,310)。 (pPenOld)。BrhNew)。 (LTGRAY_BRUSH)。 // NULL_PEN用于繪制無邊界的填充圖形 (amp。 // 使用堆畫刷對象 (100,100,300,300)。 // 使用堆畫筆對象 例 編寫一個 SDI應用程序,使用堆畫筆和堆畫刷繪制圖形。 CBrush *pBrhOld, BrhNew。 利用 MFC AppWizard向?qū)?chuàng)建一個 SDI應用程序UseStock, 利用 ClassWizard為類 CUseStockView添加 WM_PAINT消息處理函數(shù) OnPaint(): void CUseStockView::OnPaint() { CPaintDC dc(this)。 // 設(shè)置堆畫刷對象 pBrhOld= pDCSelectObject(amp。 // 使用堆畫刷對象 使用 GDI堆對象 堆畫筆、畫刷的樣式及說明 樣 式 說 明 樣 式 說 明 BLACK_PEN 黑色畫筆 WHITE_PEN 白色畫筆 NULL_PEN 空畫筆 BLACK_BRUSH 黑色畫刷 WHITE_BRUSH 白色畫刷 NULL_BRUSH 空畫刷 GRAY_BRUSH 灰色畫刷 DKGRAY_BRUSH 深灰色畫刷 LTGRAY_BRUSH 淺灰色畫刷 HOLLOW_BRUSH 虛畫刷 也可以利用 CGdiObject::CreateStockObject()將GDI對象設(shè)置成指定的堆對象,這時需要首先聲明一個 GDI對象,最后還需要調(diào)用函數(shù) SelectObject()將與堆對象關(guān)聯(lián)的 GDI對象選入當前的設(shè)備環(huán)境,如下代碼所示: CBrush *pBrhOld, BrhNew。 ? 通過調(diào)用成員函數(shù) CDC::SelectStockObject()可以選擇一個堆對象繪圖工具,以下代碼將堆畫筆和堆畫刷作為當前的繪圖工具: pPenOld=(CPen*) pDCSelectStockObject(NULL_PEN)。 } ? Windows預定義了一些簡單風格的 GDI對象,用戶使用這些 GDI對象時,無需自己創(chuàng)建它們,可以直接將它們選入當前的設(shè)備環(huán)境,這些 GDI對象稱作為 堆( Stock) 對象 。 HBRUSH CUseBrushDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { //HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor)。 // return TRUE unless you set the focus . . . } 例 編寫一個對話框應用程序,并重新設(shè)置對話框的背景色。 BOOL CUseBrushDlg::OnInitDialog() { . . . . . . // TODO: Add extra initialization here (RGB(0,0,255))。 1. 建立一個基于對話框的應用程序 UseBrush, 為對話框類 CUseBrushDlg添加一個 CBrush類型的成員變量 m_BrushBkClr。 ? 如下代碼創(chuàng)建了一個填充色為紅色 、 圖案為垂直相交陰影線的畫刷: CBrush BrushNew。 // 創(chuàng)建圖案畫刷 使用畫刷 ? 創(chuàng)建畫刷也可先構(gòu)造一個沒有初始化的 CBrush類畫刷對象 , 然后調(diào)用 CBrush類的初始化成員函數(shù)創(chuàng)建定制的畫刷工具 。 // 創(chuàng)建陰影畫刷 CBrush brush3(amp。 以下創(chuàng)建三種不同類型的畫刷: CBrush brush1(RGB(255,0,0))。 與畫筆一樣 , 也可以利用 MFC畫刷類 CBrush創(chuàng)建自己的畫刷 , 用于填充圖形的繪制 。 // 恢復原來的畫筆 delete pPenNew。 pDCLineTo(600,40+20*i)。 // 選擇創(chuàng)建的畫筆 pDCTextOut(460,30+20*i, strColor[i])。 i++) // 用不同顏色的畫筆繪圖 { CPen *pPenNew=new CPen(PS_SOLID,2,rgbPenClr[i])。 for(i=0。 COLORREF rgbPenClr[]={RGB(255,0,0),RGB(0,255,0), RGB(0,0,255),RGB(255,255,0),RGB(255,0,255), RGB(0,255,255),RGB(192,192,192)}。 // 刪除底層的 GDI對象 } else { MessageBox(不能創(chuàng)建畫筆 ! )。 pDCSelectObject(pPenOld)。 pDCMoveTo(300,40+20*i)。PenNew)。 i7。 pDCTextOut(260,10,用不同寬度的畫筆繪圖 )。 // 刪除底層的 GDI對象 } else { MessageBox(不能創(chuàng)建畫筆 ! )。 pDCSelectObject(pPenOld)。 pDCMoveTo(100,40+20*i)。PenNew)。 i7。 例 編寫一個 SDI應用程序,繪制不同風格、寬度和顏色的直線。 char *strStyle[]={Solid,Dot,Dash,DashDot, DashDotDot,Null,InsideFrame}。 // 刪除底層的 GDI對象 3. 還原畫筆 在 OnDraw()函數(shù)中添加如下所示的代碼: CPen *pPenOld, PenNew。 當繪圖完成后 , 應該通過調(diào)用成員函數(shù) CDC::SelectObject()恢復設(shè)備環(huán)境以前的畫筆工具 ,并通過調(diào)用成員函數(shù) CGdiObject::DeleteObject()釋放GDI對象所占的內(nèi)存資源 , 如下代碼所示: pDCSelectObject(pPenOld)。PenNew)。 如果選擇成功 , 函數(shù) SelectObject()將返回以前畫筆對象的指針 。 當畫筆對象的聲明與創(chuàng)建不在同一個地方時 (如需要多次改變畫筆 )只有采用這種方法 。 (PS_DASH, 1, RGB(255,0,0))。 1. 創(chuàng)建畫筆 創(chuàng)建畫筆最簡單的方法是調(diào)用 CPen類的一個帶參數(shù)的構(gòu)造函數(shù)來構(gòu)造一個 CPen類畫筆對象 , 以下代碼創(chuàng)建了一個紅色虛線畫筆: CPen PenNew (PS_DASH, 1, RGB(255, 0, 0))。 選擇一個 GDI對象 : 使用畫筆 當用戶創(chuàng)建一個用于繪圖的設(shè)備環(huán)境時 , 該設(shè)備環(huán)境自動提供了一個寬度為一個像素單位 、 風格為實黑線 (BLACK_PEN)的缺省畫筆 。 CBitmap* SelectObject(CBitmap* pBitmap)。 CBrush* SelectObject(CBrush* pBrush)。 CDC類提供了成員函數(shù) SelectObject()選擇用戶自己創(chuàng)建的 GDI對象 , 該函數(shù)有多種重載形式 , 可以選擇用戶已定制好的畫筆 、 畫刷 、 字體和位圖等不同類型的 GDI對象 。 除了畫筆和畫刷 , 其它 GDI對象還包括字體 、位圖和調(diào)色板 。 畫筆和畫刷 GDI對象 ? Windows GDI提供了一些繪圖對象 , 程序通過這些 GDI對象設(shè)置繪圖的工具和風格 , 這里的對象是指 Windows數(shù)據(jù)結(jié)構(gòu) , 而不是 C++類的對象 。 如果要使用不同風格和顏色的繪圖工具進行繪圖 , 用戶必須重新為設(shè)備環(huán)境設(shè)置自定義的畫筆和畫刷等繪圖工具 。 // 背景色為灰色 pDCSetTextColor(RGB(0,0,255))。 例如: COLORREF rgbBkClr=RGB(192,192,192)。 ?直接設(shè)置 COLORREF數(shù)據(jù)不太方便 , Windows提供了 RGB宏用于設(shè)置顏色 , 將其中的紅 、 綠 、 藍分量值轉(zhuǎn)換為 COLORREF類型的顏色數(shù)據(jù): RGB(byRed, byGreen, byBlue) 其中參數(shù) byRed、 byGreen和 byBlue分別表示紅 、 綠 、 藍分量值 ( 范圍 0到 255) 。 顏色的設(shè)置 ? Windows用 COLORREF類型的數(shù)據(jù)存放顏色 , 它是一個 32位整數(shù) 。 pDCSetWindowOrg(50, 50)。 ( 4) pDCSetMapMode(MM_TEXT)。 pDCSetViewportOrg(50,50)。 pDCRectangle(CRect(50, 50, 100, 100))。 ( 2) pDCSetMapMode(MM_TEXT)。 ( 1) pDCSetMapMode(MM_TEXT)。 ? 除了映射模式,窗口和視口也是決定一個點的邏輯坐標如何轉(zhuǎn)換為設(shè)備坐標的一個因素。這里,窗口是對應于邏輯坐標系(設(shè)備環(huán)境)由用戶設(shè)定的一個區(qū)域,而視口是對應于實際輸出設(shè)備由用戶設(shè)定的一個區(qū)域。 ? Windows定義了 8種映射模式: MM_TEXT、MM_LOMETRIC、 MM_HIMETRIC、 MM_LOE NGLISH、 MM_HIENGLISH、 MM_TWIPS、 MM _ISOTROPIC、 MM_ANISOTROPIC ? 映射模式使得程序員可不必考慮輸出設(shè)備的具體設(shè)備坐標系,而在一個統(tǒng)一的邏輯坐標系中進行圖形的繪制。 } 映射模式 ? 映射模式確定了在繪制圖形時所依據(jù)的坐標系,它定義了邏輯單位的實際大小、坐標增長方向,所有映射模式的坐標原點均在設(shè)備輸出區(qū)域(如客戶區(qū)或打印區(qū))的左上角。 m_ptOrigin=point。 (m_ptOrigin)。point)。dc)。 CClientDC dc(this)。 } void CMyDrawView::OnMouseMove(UINT nFlags, CPo
點擊復制文檔內(nèi)容
教學課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1