Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Const GWL_EXSTYLE = (-20)
Const WS_EX_TRANSPARENT = &H20&
Private PreValue As LongPrivate Sub Command1_Click()
Dim i As Long
i = GetWindowLong(Me.hwnd, GWL_EXSTYLE)
'变成透明的Form
PreValue = SetWindowLong(Me.hwnd, GWL_EXSTYLE, i Or WS_EX_TRANSPARENT)
Me.Show
DoEvents
Command1.Refresh '令Command1可见
Command2.Refresh '令Command2可见
End SubPrivate Sub Command2_Click() '还原变成不透明
Call SetWindowLong(Me.hwnd, GWL_EXSTYLE, PreValue)
Me.Hide
Me.Show
Command1.Refresh
Command2.Refresh
End Sub
Private Sub Form_Load()
Call Command1_Click
End SubPrivate Sub Text1_GotFocus()
Text1.IMEMode = 1
End Sub
只是举个例子,换成Text就可以了
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Const GWL_EXSTYLE = (-20)
Const WS_EX_TRANSPARENT = &H20&
Private PreValue As LongPrivate Sub Command1_Click()
Dim i As Long
i = GetWindowLong(Me.hwnd, GWL_EXSTYLE)
'变成透明的Form
PreValue = SetWindowLong(Me.hwnd, GWL_EXSTYLE, i Or WS_EX_TRANSPARENT)
Me.Show
DoEvents
Command1.Refresh '令Command1可见
Command2.Refresh '令Command2可见
End SubPrivate Sub Command2_Click() '还原变成不透明
Call SetWindowLong(Me.hwnd, GWL_EXSTYLE, PreValue)
Me.Hide
Me.Show
Command1.Refresh
Command2.Refresh
End Sub
Private Sub Form_Load()
Call Command1_Click
End SubPrivate Sub Text1_GotFocus()
Text1.IMEMode = 1
End Sub
只是举个例子,换成Text就可以了
我的意思 比如在一个图片上输入文字,要有提示符,可是选取,就是和 textbox 一样
就是 textbox 输入 但背景 是底层的背景