大大大虾!!----------------------------------------------------------------------------------------请关注,并帮忙!!!

WangTiger 2000-09-02 11:00:00
-
-
-
-
怎样让程序是透明的,但控件还是显示的,只有背景是透明的,怎么做???
-
--
-
-
-
谢谢!!!
help !!
...全文
223 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
prefix 2000-09-10
  • 打赏
  • 举报
回复
He doesn't want us to teach him to catch the fish, he only wants us to give him the fish.
prefix 2000-09-10
  • 打赏
  • 举报
回复
He don't want us to teach him to catch the fish, he only want us to give him the fish.
shines77 2000-09-10
  • 打赏
  • 举报
回复
缺少了声明而已,但代码是正确的,你不能靠别人给你做好月饼,得自己锻炼一下。

代码绝对是正确的。
WangTiger 2000-09-09
  • 打赏
  • 举报
回复
错误的东西,不能用。
WangTiger 2000-09-03
  • 打赏
  • 举报
回复
谢谢大哥!小弟以后一定刻苦学习!
shines77 2000-09-03
  • 打赏
  • 举报
回复
再看一个函数看不懂就别怪我了!!!


Private Function GetSkinMask(Bitmap As PictureBox, TransColor As Long) As Long

Dim NowPosStaus As Boolean, i As String
Dim RgnTemp1 As Long, RgnTemp2 As Long
Dim StartPos As Long, EndPos As Long
Dim NowPosX As Long, NowPosY As Long

RgnTemp1 = 0: RgnTemp2 = 0: TransColor = Bitmap.Point(0, 0)

For NowPosY = 0 To Bitmap.ScaleHeight - 1
StartPos = -1: EndPos = -1: NowPosStaus = True
For NowPosX = 0 To Bitmap.ScaleWidth - 1
If Bitmap.Point(NowPosX, NowPosY) <> TransColor Then
If NowPosStaus Then StartPos = NowPosX: NowPosStaus = False
Else
If Not (NowPosStaus) Then
EndPos = NowPosX
If StartPos <> EndPos And StartPos > 0 Then
If RgnTemp1 = 0 Then
RgnTemp1 = CreateRectRgn(StartPos + StartX, NowPosY + StartY, EndPos + StartX, NowPosY + StartY + 1)
Else
RgnTemp2 = CreateRectRgn(StartPos + StartX, NowPosY + StartY, EndPos + StartX, NowPosY + StartY + 1)
If RgnTemp2 <> 0 Then Dummy = CombineRgn(RgnTemp1, RgnTemp1, RgnTemp2, RGN_OR)
DeleteObject (RgnTemp2)
End If
NowPosStaus = True
End If
End If
End If
Next NowPosX
Next NowPosY
GetSkinMask = RgnTemp1

End Function
shines77 2000-09-03
  • 打赏
  • 举报
回复
这是有关设置区域的API函数:

Type POINTAPI
x As Long
y As Long
End Type

Declare Function CreateEllipticRgn Lib "gdi32" Alias "CreateEllipticRgn" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
Declare Function CreatePolygonRgn Lib "gdi32" Alias "CreatePolygonRgn" (lpPoint As POINTAPI, ByVal nCount As Long, ByVal nPolyFillMode As Long) As Long
Declare Function CreatePolyPolygonRgn Lib "gdi32" Alias "CreatePolyPolygonRgn" (lpPoint As POINTAPI, lpPolyCounts As Long, ByVal nCount As Long, ByVal nPolyFillMode As Long) As Long
Declare Function CreateRectRgn Lib "gdi32" Alias "CreateRectRgn" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
Declare Function CreateRoundRectRgn Lib "gdi32" Alias "CreateRoundRectRgn" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long, ByVal X3 As Long, ByVal Y3 As Long) As Long

Declare Function CombineRgn Lib "gdi32" Alias "CombineRgn" (ByVal hDestRgn As Long, ByVal hSrcRgn1 As Long, ByVal hSrcRgn2 As Long, ByVal nCombineMode As Long) As Long
Declare Function CombineTransform Lib "gdi32" Alias "CombineTransform" (lpxformResult As xform, lpxform1 As xform, lpxform2 As xform) As Long
Declare Function SetWindowRgn Lib "user32" Alias "SetWindowRgn" (ByVal hWnd As Long, ByVal hRgn As Long, ByVal bRedraw As Boolean) As Long

Public Const RGN_AND = 1
Public Const RGN_OR = 2
Public Const RGN_XOR = 3
Public Const RGN_DIFF = 4
Public Const RGN_COPY = 5
Public Const RGN_MAX = RGN_COPY
Public Const RGN_MIN = RGN_AND
shines77 2000-09-03
  • 打赏
  • 举报
回复
恕我直言
shines77 2000-09-03
  • 打赏
  • 举报
回复
你他妈的好贪心啊,有都不告诉你,其实做起来很简单,就是不告诉,我想告诉你你很贪心,学艺不精,却很贪心。

7,763

社区成员

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

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