VB.NET下GetCurrentObjet的问题

wonder99wei 2008-09-27 03:29:55
我要读取一PICTUREBOX里的图片像素信息,当我调用GetCurrentObject时返回值一直为0,查阅相关文档后,由于没有API编程的经验,不甚其解,特发帖请教GetCurrentObject(hdc,uobjecttype)里第二个参数到底如何使用?

其中部分代码如下:
......
iBitmap = GetCurrentObject(IdSource, 7)'问题就在这。。。///IdSource 为PICTUREBOX1.handle
GetDIBits(IdSource, iBitmap, 0&, H, ColVal(0, 0, 0), bi24BitInfo, 0&)

DeleteObject(iBitmap)
.....
/**************************
GetCurrentObject
  函数功能:该函数得到一个从特定类型中选定目标的设备对象句柄。
  函数原型:HGDIOBJ GetCurrentObject(HDC hdc, UINT uObjectType);
  参数:
  hdc:设备上下文环境句柄。
  uObjectType:指定要查询的对象类型,该参数可取如下一值:
  OBJ_PEN:笔;OBJ_BRUSH:返回当前选择的画笔;OBJ_PAL:返回当前选择的调色板;
  OBJ_FONT:返回当前选择的字体;OBJ_BMAP:返回当前选择的位图。
  返回值:如果成功,返回指定对象的句柄;如果失败,则返回NULL。
/**********************************
网上查了好多例子,GetcurrentObject(hdc,uobjecttype)中第二个参数都是“7”,我不懂这“7”和上面函数说明中的类型是怎么定义的,或者说这“7”代表什么意思?
...全文
89 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
whycom 2008-09-27
  • 打赏
  • 举报
回复
OBJ_PEN在WINGDI.H里有定义
wonder99wei 2008-09-27
  • 打赏
  • 举报
回复
用说明中参数,关键是类型问题啊。OBJ_PEN之类的如何对应到整形啊?
Forrest23 2008-09-27
  • 打赏
  • 举报
回复
帮顶,同样不明白是什么意思,你用上面那几个参数试一下啊

16,717

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧