• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
thankgoodness
博客园    首页    新随笔    联系   管理    订阅  订阅

API函数—设备场景函数(一)

 

本页包括下列五个函数
CombineRgn
CombineTransform
CreateCompatibleDC
CreateDC,CreateDCBynum
CreateEllipticRgn


CombineRgn

声明
说明
将两个区域组合为一个新区域
返回值
Long,下列常数之一:
COMPLEXREGION:区域有互相交叠的边界
SIMPLEREGION:区域边界没有互相交叠
NULLREGION:区域为空
ERRORAPI:不能创建组合区域
参数表
参数 类型及说明
hDestRgn Long,包含组合结果的区域句柄
hSrcRgn1 Long,源区域1
hSrcRgn2 Long,源区域2
nCombineMode Long,组合两区域的方法。可设为下述常数
RGN_AND hDestRgn被设置为两个源区域的交集
RGN_COPY hDestRgn被设置为hSrcRgn1的拷贝
RGN_DIFF hDestRgn被设置为hSrcRgn1中与hSrcRgn2不相交的部分
RGN_OR hDestRgn被设置为两个区域的并集
RGN_XOR hDestRgn被设置为除两个源区域OR之外的部分


CombineTransform

VB声明
Declare Function CombineTransform Lib "gdi32" Alias "CombineTransform" (lpxformResult As xform, lpxform1 As xform, lpxform2 As xform) As Long
说明
驱动世界转换。它相当于依顺序进行两次转换
返回值
Long,执行成功为TRUE(非零),失败则为零
参数表
参数 类型及说明
lpxformResult xform,保存转换结果的结构
lpxform1 xform,按顺序的第一个结构
xform xform,按顺序的第二个结构
适用平台
Windows NT


CreateCompatibleDC

VB声明
Declare Function CreateCompatibleDC Lib "gdi32" Alias "CreateCompatibleDC" (ByVal hdc As Long) As Long
说明
创建一个与特定设备场景一致的内存设备场景
返回值
Long,新设备场景句柄,若出错则为零
参数表
参数 类型及说明
hdc Long,设备场景句柄。新的设备场景将与它一致。也可能为0以创建一个与屏幕一致的设备场景
注解
在绘制之前,先要为该设备场景选定一个位图。不再需要时,该设备场景可用DeleteDC函数删除。删除前,其所有对象应回复初始状态


CreateDC,CreateDCBynum

VB声明
Declare Function CreateDC& Lib "gdi32" Alias "CreateDCA" (ByVal lpDriverName As String, ByVal lpDeviceName As String, ByVal lpOutput As String, lpInitData As DEVMODE)
Declare Function CreateDCBynum& Lib "gdi32" Alias "CreateDCA" (ByVal lpDriverName As String, ByVal lpDeviceName As String, ByVal lpOutput As String, lpInitData As Long)
说明
为专门设备创建设备场景
返回值
Long,新设备场景句柄,若出错则为零
参数表
参数 类型及说明
lpDriverName String,用vbNullString传递null值给该参数,除非:1、用DISPLAY,是获取整个屏幕的设备场景;2、用WINSPOOL,则是访问打印驱动
lpDeviceName String,所用专门设备的名称。该名由打印管理器分配显示
lpOutput String,用vbNullString传递null值给该参数
lpInitData DEVMODE,这个结构保存初始值。用CreateDCBynum传递0(NULL)值则适用默认设置
注解
在绘制之前,先要为该设备场景选定一个位图。不再需要时,该设备场景可用DeleteDC函数删除。删除前,其所有对象应回复初始状态。若有设备初始设置可用DocumentProperties API函数载入DEVMODE结构。使用屏幕设备场景(DISPLAY)时要小心,因为它会干扰其他应用程序的外观


CreateEllipticRgn

VB声明
Declare Function CreateEllipticRgn Lib "gdi32" Alias "CreateEllipticRgn" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
说明
创建一个椭圆,该椭圆与X1,Y1和X2,Y2坐标点确定的矩形内切
返回值
Long,执行成功则为区域句柄,失败则为零
参数表
参数 类型及说明
X1,Y1 Long,矩形左上角X,Y坐标
X2,Y2 Long,矩形右下角X,Y坐标
注解
不用时一定要用DeleteObject函数删除区域。用Ellipse API函数绘出的椭圆与该椭圆区域不完全相同,因为本函数的绘图计算不包括矩形的下边和右边
posted @ 2008-04-24 17:10  宇晨  阅读(285)  评论(1)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3