gpt4 book ai didi

vb6 - 我表单上的黄色对象显示点击透明度

转载 作者:行者123 更新时间:2023-12-02 04:34:42 24 4
gpt4 key购买 nike

我在我的应用程序中的多个 vb6 表单上遇到黄色对象被“点击”的问题:

Image Example

我能想到的唯一可能会影响它的是以下内容(来自 VBForums ,我用它来使青色元素透明,就像您在图像中看到的那样,但是这应该对 vbYellow 没有影响。

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

Private Declare Function SetLayeredWindowAttributes Lib "user32" ( _
ByVal hwnd As Long, _
ByVal crKey As Long, _
ByVal bAlpha As Byte, _
ByVal dwFlags As Long) As Long

Private Const GWL_STYLE = (-16)
Private Const GWL_EXSTYLE = (-20)
Private Const WS_EX_LAYERED = &H80000
Private Const LWA_COLORKEY = &H1
Private Const LWA_ALPHA = &H2

Private Sub Form_Load()
Me.BackColor = vbCyan
SetWindowLong Me.hwnd, GWL_EXSTYLE, GetWindowLong(Me.hwnd, GWL_EXSTYLE) Or WS_EX_LAYERED
SetLayeredWindowAttributes Me.hwnd, vbCyan, 0&, LWA_COLORKEY
End Sub

我试图用相同颜色的图像替换 vbYellow 形状。这也有一个 Click 函数的优点,但最终会得到相同的结果,甚至不会触发任何设置的 Click 函数。

最佳答案

我认为问题在于 VB6/Win32 有时会使用不同的颜色代码。有时,这只是从#RRGGBB (RGB) 切换到/从#BBGGRR (BGR) 切换的问题。

洋红色 #FF00FF 比黄色更适合选择,因为无论红色和蓝色分量是否切换,这种颜色都会起作用。

vbMagenta 可以直接毫无问题地使用。

关于vb6 - 我表单上的黄色对象显示点击透明度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44603686/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com