怎样使picturebox的底色编程透明的

maize 2001-02-01 06:01:00
最近编程需要把许多控件放在picturebox集体移动,但窗体的背景不能从picbox透过来。请赐教,急!
cx331@263.net
...全文
515 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
maize 2001-02-04
  • 打赏
  • 举报
回复
经过我查书,可以用createcompatiblebitmap和selectobject函数实现,代码如下:
form_load
dim hbitmap
picture1.autoredraw=true
hbitmap=createcompatiblebitmap(picture1.hdc,0,0)
selcetobject picture1.hdc,hbitmap
picture1.refresh
end sub

这虽可以实现透明,但透的太彻底了,连窗体都透过去了,picturebox就像在窗体上挖了一个洞,直接可以看到后面。这可不是我想要的结果。请问怎么改一改,我很急,谢谢大家。
gameboy999 2001-02-03
  • 打赏
  • 举报
回复
这个嘛。。。
我的电脑不在这,没法试。
我想你可以自己试试呀,相信会对你的功力有很大帮助:)
maize 2001-02-03
  • 打赏
  • 举报
回复
首先谢谢你的建议,他们看起来很有道理。但我对api函数部分并不是很了解,(只是听过这两个函数,具体不知道怎么用)所以请说具体一些。(最好把代码写出来)。再次感谢!
gameboy999 2001-02-02
  • 打赏
  • 举报
回复
我有个建议,
可以采用这两个方法:
1。你移动任何一个picturebox后,就马上拷贝你的form到那个picturebox上,就可以实现透明。
用bitblt就行了。

2。我认为picturebox也是一种窗体,所有它应该具有透明的属性,好象属于ext style.
请用setwindowlong将其设置为通明试试。看看行不行。
maize 2001-02-02
  • 打赏
  • 举报
回复
我虽有这个控件,但我需要的是像老picturebox一样能把其他控件放在picturebox上(若picturebox的visible=false时,picturebox上的控件都不可见)实现集体的出现和隐藏。但你这个Microsoft Forms2.0 Object Library的虽可以透明但不能实现上述功能。有没有两全的办法,谢谢!
proman 2001-02-01
  • 打赏
  • 举报
回复
是新的image控件吧
Amoon 2001-02-01
  • 打赏
  • 举报
回复
有吗?怎么我没找到?
TrueZq 2001-02-01
  • 打赏
  • 举报
回复
用控件集合'Microsoft Forms2.0 Object Library
你必须在组件面板中添加此项,然后用新的PictureBox控件
它和默认的PictureBox没有什么区别,只是属性中多出了BackStyle属性,我们利用了这个属性,将控件设为背景透明0-fmBackStyleTransparent,这样控件的背景就能和窗体的背景保持
一致了。

可以吗?不行的话再提。


7,757

社区成员

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

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