如何用我自己的窗口替换Windows桌面?

时间:2009-09-26 11:20:49

标签: windows winapi desktop

我曾经看到程序可以将日历直接嵌入桌面,日历是交互式的,所有“显示桌面”操作包括不会隐藏它。

我想知道如何实现这一目标?谢谢。

3 个答案:

答案 0 :(得分:1)

使用以下代码并将窗口句柄传递给函数,而表单加载希望完全解决您的问题

public void SetFormOnDesktop(IntPtr hwnd) {    
IntPtr hwndf = hwnd;  
IntPtr hwndParent = FindWindow("ProgMan", null);  
SetParent(hwndf, hwndParent);  
}

答案 1 :(得分:0)

指定背景时,您可以选择将HTML文件指定为背景。可能是您正在使用的软件实际上只显示其中包含日历的HTML页面。

您可以通过单击“桌面属性”中“背景”选项卡中的“浏览”来指定HTML页面。

答案 2 :(得分:0)

常规窗口使用旧的“Always on Top”技巧的变体总是在桌面上?这就是我要做的,至少。