制造出透明的窗体(Form)

2018-06-17 17:12:48来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

注释:form上有Command1,command2两个Button并事先设定form之BorderStyle=0

OptionExplicit
PrivateDeclareFunctionGetWindowLongLib"user32"Alias"GetWindowLongA"(ByValhwndAsLong,ByValnIndexAsLong)AsLong
PrivateDeclareFunctionSetWindowLongLib"user32"Alias"SetWindowLongA"(ByValhwndAsLong,ByValnIndexAsLong,ByValdwNewLongAsLong)AsLong
ConstGWL_EXSTYLE=(-20)
ConstWS_EX_TRANSPARENT=&H20&
PrivatePreValueAsLong

PrivateSubCommand2_Click()注释:还原变成不透明
CallSetWindowLong(Me.hwnd,GWL_EXSTYLE,PreValue)
Me.Hide
Me.Show
EndSub

PrivateSubForm_Load()
DimiAsLong

i=GetWindowLong(Me.hwnd,GWL_EXSTYLE)
注释:变成透明的Form
PreValue=SetWindowLong(Me.hwnd,GWL_EXSTYLE,iOrWS_EX_TRANSPARENT)
Me.Show
DoEvents
Command1.Refresh注释:令Command1可见
Command2.Refresh注释:令Command2可见
EndSub->

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:VB应用程序访问SQLServer方法探讨

下一篇:VB编程俱乐部问答