zoukankan      html  css  js  c++  java
  • 小林的VB6動態壁紙模擬程序

    本項目參考了以下資料[這可能對你理解程序運行有幫助]:

    https://github.com/Yinmany/WinWallpaper

    https://blog.csdn.net/breaksoftware/article/details/4332371

    https://tieba.baidu.com/p/5015219921?red_tag=0411291965

    引用了迅雷的Aplayer引擎:

    http://aplayer.open.xunlei.com/index.html

    本項目地址:https://github.com/Tyningling/Dynamicwallpaper

    ——————————————————————————————

    使用示例:

    1.創建壁紙窗體:

    使用win32api.SendMessageTimeOut向Program Manager 發送0x52c [這個步驟將使SysListView32与Program Manager分離。]

    之後將我們的窗體Form2,設置為Program Manager的子窗體 [管它三七二十一]

    這樣我們的窗體就成爲了壁紙之前的窗體。

    2.關於TXMiniSkin__這個窗體是騰訊桌面整理組件

    在測試環境中,360桌面助手能與壁紙窗體共存,是因爲,它是一個獨立窗體,用類似于創建壁紙窗體的方法,設置了透明的收納格,這個程序的實現也十分簡單。

    但是,在騰訊的桌面整理中,它就沒有這麽友善了,請看大屏幕:

    (圖爲使用SetParent將其父窗體設置為Form1)

    沒錯,它建立一了個 TxMiniSkin窗體,然後繪製了圖標,并且不斷的刷新自己為壁紙窗體,最後我的解決方法是:

    在EnumWindowsProcA()的回調函數中,找到它,并設置它為隱藏窗體。

    Public Workerw As Long, Tx As Long, Tx_B As Boolean
    Public Function EnumWindowsProcA(ByVal hWnd As Long, ByVal lParam As Long) As Boolean
    If win32api.FindWindowExA(hWnd, 0&, "SHELLDLL_DefView", "") <> 0& Then
    Workerw = win32api.FindWindowExA(&O0, hWnd, "WorkerW", "")
    'Call win32api.ShowWindow(Workerw, SW_SHOW)
    Call win32api.ShowWindow(Workerw, SW_HIDE)
    End If
    '特殊处理:
    '__________关于腾讯桌面整理导致的问题
    If Not Tx_B Then
    Tx = win32api.FindWindowExA(hWnd, 0&, "TXMiniSkin", "桌面整理")
    If Tx <> 0 Then Call win32api.ShowWindow(Tx, SW_HIDE): Tx_B = True
    End If
    EnumWindowsProcA = True
    End Function

    3.動態壁紙組件

    我所使用的是迅雷的Aplayer,由于解碼庫比較大,所以請自行從官網下載并放置到 【BinCodecs】 中。

    爲什麽使用Aplayer?  大概是因爲比較方便,VB6可以直接調用ActiveX控件,但是你必須先使用install.bat對它進行安裝。

    另外,其實你也可以使用別的播放組件來實現播放。

  • 相关阅读:
    python日期格式化,字符串格式化
    python3+django+mysql
    django ORM排序
    CentOS7 编译安装python3.5
    笔记
    python添加pip本地源
    centos7 安装chrome浏览器
    mysql 存储过程-1基础
    mysql中的describe语法 以及查看 当前库中所有表和字段信息
    python 可变类型和不可变类型
  • 原文地址:https://www.cnblogs.com/lingqingxue/p/11275587.html
Copyright © 2011-2022 走看看