| 子程序名 | 返回值类型 | 公开 | 备 注 | ||||
| 窗口_置穿透 | 逻辑型 | . | |||||
| 参数名 | 类 型 | 参考 | 可空 | 数组 | 备 注 | ||
| 窗口句柄 | 整数型 | 是否穿透 | 逻辑型 | 真为穿透,假为不穿透,默认为假 | |||
| 变量名 | 类 型 | 静态 | 数组 | 备 注 | ||
| dwStyleEx | 整数型 | |||||
| dwStyleExNew | 整数型 | |||||
如果真 (取反 (是否穿透))
dwStyleEx = GetPropA (窗口句柄, “transparent_tmp”)
RemovePropA (窗口句柄, “transparent_tmp”) ' 删除这个属性
SetWindowLongA (窗口句柄, #GWL_EXSTYLE, dwStyleEx) ' 重新取一下,看是否设置成功
返回 (dwStyleEx = GetWindowLongA (窗口句柄, #GWL_EXSTYLE )) ' 重新取一下,看是否设置成功
dwStyleEx = GetWindowLongA (窗口句柄, #GWL_EXSTYLE )
如果真 (位与 (dwStyleExNew, #WS_EX_TRANSPARENT ) = 0) ' 如果窗口没有这个样式,就加上这个样式
dwStyleExNew = 位或 (dwStyleExNew, #WS_EX_TRANSPARENT )
如果真 (位与 (dwStyleExNew, #WS_EX_LAYERED ) = 0) ' 如果窗口没有这个样式,就加上这个样式
dwStyleExNew = 位或 (dwStyleExNew, #WS_EX_LAYERED )SetPropA (窗口句柄, “transparent_tmp”, dwStyleEx) ' 记录原样式,取消穿透时用到
SetWindowLongA (窗口句柄, #GWL_EXSTYLE, dwStyleExNew)
dwStyleEx = GetWindowLongA (窗口句柄, #GWL_EXSTYLE ) ' 重新取一下,看是否设置成功
返回 (位与 (dwStyleEx, #WS_EX_TRANSPARENT, #WS_EX_LAYERED ) ≠ 0) ' 如果有这两个样式就表示成功
词条作者信息 使用例程
