函数功能:该函数选择一对象到指定的设备上下文环境中,该新对象替换先前的相同类型的对象。
函数原型:HGDIOBJ SelectObject(HDC hdc, HGDIOBJ hgdiobj);
参数:
hdc:设备上下文环境的句柄。
hgdiobj:被选择的对象的句柄,该指定对象必须由如下的函数创建。
位图:CreateBitmap, CreateBitmapIndirect, CreateCompatible Bitmap, CreateDIBitmap, CreateDIBsection(只有内存设备上下文环境可选择位图,并且在同一时刻只能一个设备上下文环境选择位图)。
画刷:CreateBrushIndirect, CreateDIBPatternBrush, CreateDIBPatternBrushPt, CreateHatchBrush, CreatePatternBrush, CreateSolidBrush。
字体:CreateFont, CreateFontIndirect。
笔:CreatePen, CreatePenIndirect。
区域:CombineRgn, CreateEllipticRgn, CreateEllipticRgnIndirect, CreatePolygonRgn, CreateRectRgn, CreateRectRgnIndirect。
返回值:如果选择对象不是区域并且函数执行成功,那么返回值是被取代的对象的句柄;如果选择对象是区域并且函数执行成功,返回如下一值;
SIMPLEREGION:区域由单个矩形组成;
COMPLEXREGION:区域由多个矩形组成。
NULLREGION:区域为空。
如果发生错误并且选择对象不是一个区域,那么返回值为NULL,否则返回GDI_ERROR。
注释:该函数返回先前指定类型的选择对象,一个应用程序在它使用新对象进行绘制完成之后,应该用新对象替换原始的缺省的对象。
应用程序不能同时选择一个位图到多个设备上下文环境中。
ICM:如果被选择的对象是画笔或笔,那么就执行颜色管理。
速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;头文件:wingdi.h;库文件:gdi32.lib。
分享到:
相关推荐
) BeginPath dc '开始记录窗体轮廓路径 SetBkMode dc TRANSPARENT '设置背景为透明模式这是必须有的 OldFont = SelectObject(dc NewFont) TextOut dc00 "VB6"3 SelectObject dc OldFont EndPath dc ...
POldBrush = PDC->SelectObject (&Brush); // draw figure: PDC->Rectangle (m_X1, m_Y1, m_X2, m_Y2); // remove pen/brush: PDC->SelectObject (POldPen); PDC->SelectObject (POldBrush); } IMPLEMENT...
java语言编写,网上选课系统 本程序能够正确运行,windows 2000/xp
pOldBitmap=dc.SelectObject (&MyBitMap); ClientDC.BitBlt (point.x ,point.y,bmpInfo.bmWidth ,bmpInfo.bmHeight,&dc,0,0,SRCAND); dc.SelectObject (pOldBitmap); 用全局变量bmWidth和bmHeight来保存元件的...
stdafx.h的代码// This is a part of the Microsoft Foundation Classes C++ library. ...// All rights reserved. // // This source code is only intended as a supplement to the // Microsoft Foundation Classes ...
// PhonePictureDlg.cpp : implementation file // #include "stdafx.h" #include "PhonePicture.h" #include "PhonePictureDlg.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE...
// MyPaintView.cpp : implementation of the CMyPaintView class // #include "stdafx.h" ... CPen* pOldPen = (CPen*)pDC->SelectObject(&pen); pDC->SetROP2(R2_XORPEN); pDC->MoveTo(pt1); pDC->LineTo...
dc.SelectObject(&m_Back); //获取BITMAP对象 BITMAP hb; m_Back.GetBitmap(&hb); //获取窗口大小 CRect rt; GetClientRect(&rt); //显示位图 pDC->StretchBlt(0, 0, rt.Width(), rt.Height(), &dc, 0,...
CBitmap*Old=cdc_BackGround.SelectObject(&bitmap;_BackGround); cdc.StretchBlt(0,0,rect.Width(),rect.Height(),&cdc;_BackGround,0,0,bimap2.bmWidth,bimap2.bmHeight,SRCCOPY); 4.2 飞机大战游戏对象的绘制...
Visual C++MFC入门教程 目录 +-- 第一章 VC入门 |------ 1.1 如何学好VC |------ 1.2 理解Windows消息机制 |------ 1.3 利用Visual C++/MFC开发Windows程序的优势 |------ 1.4 利用MFC进行开发的通用方法介绍 ...
brush:= SelectObject(aa,getstockobject(null_brush)); Rectangle(aa,0,0,form1.Width ,form1.Height ); SelectObject(aa,brush); SelectObject(aa,pen); DeleteObject(bb); ReleaseDc(handle,canvas....
OldBrush := SelectObject(dc, GetStockObject(NULL_BRUSH)); Rectangle(dc, 0, 0, Self.Width, Self.Height); SelectObject(dc, OldBrush); SelectObject(dc, OldPen); DeleteObject(Pen); ReleaseDC(Handle, ...
CPen *pOldPen = pDC->SelectObject(&penOther); CBrush *pOldBrush = pDC->SelectObject(&brMain); CPoint ptCenter = m_rcRegion.CenterPoint(); int nRadius = m_nRadius - 8; for(int i = 0; i ; i++) {...
CBitmap *pbmpOld=dcMem.SelectObject(&bmpBackground); dc.StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0,bitmap.bmWidth,bitmap.bmHeight,SRCCOPY); } } 编译运行,你就会看到背景有图片了。 ...
brushOld=pDC->SelectObject(&brush); pDC->Ellipse(x - SQUARESIZE , y + SQUARESIZE , x + SQUARESIZE , y - SQUARESIZE); pDC->SelectObject(brushOld); brush.DeleteObject(); } else { ...
//add these to store return of SelectObject() calls CBitmap* pOldMemBmp = NULL; CBitmap* pOldMaskBmp = NULL; HBITMAP hOldTempBmp = NULL; memDC.CreateCompatibleDC(&dc); tempDC....
GDI截屏和DX截屏,保存到BMP文件
画直线 : CClientDC dc(this);... dc.SelectObject(&pen););//选入设备描述表 CBrush *pBrush=CBrush::FromHandle((HBRUSH)GetStockObject(BLACK_BRUSH));//填充色 dc.SelectObject(pBrush);//选入设备描述表
Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, _ ByVal hObject As Long) As Long'API函数声明 Private Sub Form_Load() Dim B'声明变量 Me.AutoRedraw = True B = ...
基本的创建画笔, 以桌面为DC #include int main( void ) ... HPEN hpen_old = (HPEN)SelectObject( hdc, hpen1 ); Ellipse( hdc, 40, 200, 40+200, 200+50 ); SelectObject( hdc, hpen_old ); return 0; }