V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
vtoexsir
V2EX  ›  Windows

windows7 上,鼠标放在任务栏图标上,显示窗口的缩略图.怎么获取到这些缩略图呢?

  •  
  •   vtoexsir · 2018-04-30 16:52:49 +08:00 · 3644 次点击
    这是一个创建于 2393 天前的主题,其中的信息可能已经有所发展或是发生改变。

    鼠标放在任务栏图标上,显示窗口的缩略图.怎么获取到这些缩略图呢?
    如图示:

    多谢您的回复!

    6 条回复    2018-05-01 04:57:14 +08:00
    Fri
        1
    Fri  
       2018-04-30 18:59:02 +08:00
    楼主说的“获取到”是什么意思呢?
    WAHSUN
        2
    WAHSUN  
       2018-04-30 19:06:56 +08:00 via Android
    应该是获取了当前窗口的截图
    geelaw
        3
    geelaw  
       2018-04-30 19:23:39 +08:00   ❤️ 1
    短答案:不能。特别注意 @WAHSUN 的方法是性能上不能接受的。

    长答案:不能,你可以对你能截图的窗口截图,如果你得到图的目的是把它显示出来,你可以直接要求 DWM 把这些缩略图帮你画到你的窗口上。比如这篇文章介绍的 http://bartdesmet.net/blogs/bart/archive/2006/10/05/4495.aspx 如果你希望用这种方法模仿一个 explorer.exe 出来,你可能还需要处理那些对缩略图特别处理的 app,例如 Internet Explorer,并不是一个窗口一个截图,而是一个 tab 一个,这些 app 会使用特别的 API,关于这些 app 如何和 explorer 交互,你可以参考 https://msdn.microsoft.com/en-us/library/windows/desktop/dd378460(v=vs.85).aspx#thumbnails 此外,这个样例介绍了一个 app 如何修改自己的缩略图 https://msdn.microsoft.com/en-us/library/windows/desktop/ff819048(v=vs.85).aspx
    vtoexsir
        4
    vtoexsir  
    OP
       2018-04-30 19:40:13 +08:00
    @Fri
    @WAHSUN
    我想 windows 系统一定是维护了一个窗口缩略图的序列,这样当鼠标指向 a 窗口的时候,立刻显示 a 窗口的缩略图.
    我是想如何获取到 a 窗口的这个缩略图,用作自己的其他用途.
    如果是自己获取窗口的缩略图,那么每当 a 窗口变化的时候,a 的缩略图同时更新.
    既然 windows 系统有在维护这个缩略图,何况自己搞呢?
    当获取到这个缩略图之后,我们可以自己做一个个性化的窗口管理器,等等
    sfqtsh
        5
    sfqtsh  
       2018-04-30 20:27:01 +08:00 via Android
    这图是可以动态的,比如正在播放视频的 QQ 影音的缩略图。
    jameslan
        6
    jameslan  
       2018-05-01 04:57:14 +08:00 via Android
    @geelaw 可以试试创建一个内存 surface,然后要求 wdm 画到这个 surface 上
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   894 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 20:30 · PVG 04:30 · LAX 12:30 · JFK 15:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.