如何在桌面上绘制文字?

WeG*_*ars 3 delphi windows-7

我需要直接在桌面上绘制滚动文本.我可以使用DC:= GetDC(0)在所有窗口的顶部绘制文本.但我不希望这样.图纸必须仅在桌面上,而不是在所有打开的窗户顶部.我的文字需要低于桌面上的图标!

我怎么在Delphi中这样做?我猜Windows 7有新的API函数,可以更方便地访问桌面窗口,因为它可以淡化壁纸.

Dav*_*nan 8

长时间使用分层窗口已经成为可能.使用 WS_EX_LAYEREDWS_EX_TRANSPARENT窗口状态.您需要确保窗口的z顺序将其置于所有其他顶级窗口的下方.我链接到的文章有许多代码示例,以帮助您前进.


添加此答案后,您又添加了一个要求,即在桌面上的图标下方绘制文本.我怀疑这是不可能的分层窗口,因为分层窗口不能是子窗口.