picturebox问题!!!!!!

xuhonghe 2007-04-24 05:12:26
我想做一个五子棋,我在FORM上放了一个picturebox,pictrue属性设置为我做的一个棋盘的位图,我想问一下怎样才能在鼠标点击图片时准确的将棋子的图片显示在正确的位置上,用什么方法显示棋子图片可以让棋子图片的白色部分透明.
...全文
169 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
touchyfc 2007-04-24
  • 打赏
  • 举报
回复
可以用CreateEllipticRgn建立各棋盘坐标区域,
在mouse_Down中用PtInRegion判断鼠标所在区域

让棋子图片的白色部分透明:用PhotoShop或其它绘图软件画gif棋子图片,棋子的多于部分颜色设置为透明,用image控件数组,动态加载到相应的位置即可
xuhonghe 2007-04-24
  • 打赏
  • 举报
回复
我知道可以在MOUSEDOWN中得到坐标,但这个坐标跟位图(棋盘)上的坐标如何一致.
熊孩子开学喽 2007-04-24
  • 打赏
  • 举报
回复
PICTURE的MOUSEDOWN或MOUSEMOVE事件中均可以直接得到X,Y这两个参数,也就是坐标位置.

透明贴图的话,可以用TRANSPARENTBLT这个API,申明如下:
Private Declare Function TransparentBlt Lib "msimg32.dll" (ByVal hdc As Long, ByVal t As Long, ByVal t As Long, ByVal t As Long, ByVal t As Long, ByVal hdc As Long, ByVal t As Long, ByVal t As Long, ByVal t As Long, ByVal t As Long, ByVal uint As Long) As Long
具体使用方法,楼主找一下例子,这个例子不少的.

1,453

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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