前段时间小编正纠结于如何在七夕节成功撩妹,突然一个idea形成于脑中。如果能让妹子的桌面图标动起来摆个心形,类似于这种效果。

教你做桌面图标(让桌面图标动起来)(1)

是不是能够让姑娘眼前一亮,不能自已,然后顺利脱单(虽然最后事实证明脱单还是得看脸)。

说干就干,经过不懈的努力,终于找到了操作图标的方式。

桌面上的图标存放在桌面窗体里。确切地讲,桌面窗体包含一个无标题的、类名为“SHELLDLL_DefView”的子窗口,这个子窗口又包含一个无标题的、类名为“SysListView32”的Windows列表控件,图标实际上就是放在这个列表控件里。只要拿到了这个列表,我们就可以任意玩耍里面的图标了。下面就是我们要用到的代码(C#)。

IntPtr vHandle = FindWindow("Progman", null);//我们先拿到整个桌面窗口。

vHandle = FindWindowEx(vHandle, IntPtr.Zero, "SHELLDLL_DefView", null);//在桌面窗口里面找到SHELLDLL_DefView这个窗口。

vHandle = FindWindowEx(vHandle, IntPtr.Zero, "SysListView32", null);//在SHELLDLL_DefView 里找到存放图标的SysListView32,这个vHandle就是存放图标的列表控件的句柄。

SendMessage(vHandle, LVM_SETITEMPOSITION, AIndex, X* 0x10000 Y;)//然后我们用SendMessage函数告诉列表控件把图标移动到哪就行了。AIndex 表示第几个图标,X和Y就是这个图标要移动到的位置了。

当然如果代码看不懂,完全没有关系。只要有想法,多看看资料编程是完全么有问题的。你只需知道用上面这些代码我们就能移动图标了,然后我们就可以让图标摆个心的形状了。但是怎么说呢,有些无聊啊!姑娘打开程序,图标就这么楞的摆好了,不够浪漫呀( ⊙ o ⊙ )!图标要是能从原来的位置自己一点点走过去多好。

可以让图标每次从原来的位置移动到一个很近的位置,然后一次次的往最后的位置挪。每次移动的间隔时间可以很短,这样整体运动就会看着很连贯(跟动画片一个原理)。最后效果可以看我发布的视频。

技术宅撩妹有技巧,这些妹子我们承包了。浪漫桌面

做完这个图标求爱程序后,虽然我的脱单计划没有成功,但是我体会到了图标的可玩性。之后我脑洞大开,用图标做了一个贪吃蛇程序。在桌面上玩图标游戏,感觉够装×。

桌面上的图标可以玩贪吃蛇,天哪,技术宅们的电脑这么神奇吗?

其实图标还有其他的玩法,例如把每个图标都当做一个像素点,那么铺满图标的桌面就可以看做一个低像素的小屏幕了。只要你技术够牛,你可以用图标发送文字表白,用图标当屏幕播放b站大火的bad apple。还有什么新的玩法,希望大家一起探索。

,