几个API函数求解释

wozhaozhe2008 2011-08-22 06:26:15
我想用BMP做窗体。现在我能遍历所有像素了。但得到需要去掉的像素该如何操作。
在网上找了资料。找到2种实现办法。
第一种是用CreateRectRgn和CombineRgn来实现,对这2个函数不太懂他的意思。
第二种是 MoveToEx( dc, p.X, p.Y, nil );
LineTo(dc, p.X, y );
LineTo(dc, p.X + 1, y );
LineTo(dc, p.X + 1, p.Y );
这个更不懂了,
我想问的是假如我要把红色透明掉。也就是窗口不显示。当我遍历到红色后该怎么处理
...全文
85 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
funxu 2011-08-23
  • 打赏
  • 举报
回复
CreateRectRgn和CombineRgn
这两个函数是创建异型窗体用的,说白了就是把图片中的颜色一个点一个点的遍历,然后把取到的点合成一个矩形
CreateRectRgn 创建矩形区域
CombineRgn 合并矩形区域
4L 给的解释很全了
MoveToEx和LineTo组合 那是画线用的

另外回答Lz的问题,遍历到红色就跳过去呗,可以查下桌面精灵的代码
或者简单些,直接用个bmp加载图片然后设定透明色就可以了
贝隆 2011-08-23
  • 打赏
  • 举报
回复
CreateRectRgn
【操作系统】
Win9X:Yes
WinNT:Yes

【说明】
创建一个由点X1,Y1和X2,Y2描述的矩形区域

【返回值】
Long,执行成功为区域句柄,失败则为零

【其它】
不用时一定要用DeleteObject函数删除该区域
这个矩形的下边和右边不包含在区域之内

【参数表】
X1,Y1 ---------- Long,矩形左上角X,Y坐标
X2,Y2 ---------- Long,矩形右下角X,Y坐标
rainychan2009 2011-08-23
  • 打赏
  • 举报
回复
学习API,装一个MSDN,或者直接网上搜啊,API还是帮助文档写得最清楚啊
广州佬 2011-08-22
  • 打赏
  • 举报
回复
图片以最左下角那一点的颜色为透明色。将Image.Transparent设为True、把那点设置为红色即可把红色透明掉。
XD王 2011-08-22
  • 打赏
  • 举报
回复
没看明白全文的关系。。
友情up

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi GAME,图形处理/多媒体
社区管理员
  • GAME,图形处理/多媒体社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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