CBM666透明QQ宠物窗口

CBM666 的透明 QQ 宠物挺有意思的,是那种看起来复古、但做法还挺巧的小项目。它主要就是把 QQ 宠物的窗口搞成透明的,用了 Windows API 和 VBScript,动手能力还挺强的。如果你对早期 Windows 编程那一套东西还挺感兴趣,或者小时候玩过 QQ 宠物,这个项目绝对能让你回味一下。

透明 QQ 宠物的核心就是把窗口设成透明,看起来像是直接贴在桌面上。用了像 SetWindowLongSetLayeredWindowAttributes 这些 API,配合 VB 的 Form 窗口,效果还蛮顺的。

代码也不复杂,核心就两段,一段是加载 QQ 宠物动画并设置透明,另一段是关闭时搞点花活——窗口慢慢飘出去,还有提示“886”的小彩蛋。

Private Sub Form_Load()
  Me.BackColor = RGB(66, 66)
  ...
  SetLayeredWindowAttributes hwnd, RGB(66, 66), 0, LWA_COLORKEY
  ShockwaveFlash1.Movie = "c:qqpet.swf"
  ...
End Sub

啦,放到现在的 Windows 10 或 11 里跑不起来,毕竟 VB6 和 ActiveX 都挺老的了。但当个参考学习,了解下早期 UI 和 API 怎么搞透明、窗口怎么动来动去,还是有点价值的。

如果你以前玩过 VB6、搞过桌面美化,或者就是单纯想了解“那时候是怎么整这些炫酷效果的”,可以看看这个。配合其他资源,比如VB6 半透明窗口或者Delphi 跨平台透明窗口,还能拓展下玩法。

哦对了,ShockwaveFlash1.Movie 里的 SWF 文件记得自己准备好,要不然就只能看个空窗口。

txt 文件大小:1.77KB