【问题标题】:Getting Pixel Values "Under" Current Window在当前窗口“下”获取像素值
【发布时间】:2015-12-26 06:47:07
【问题描述】:

本质上,我正在尝试制作一个屏幕捕获程序,用于捕获当前窗口下的像素值。 (我在 C# 中工作,在 Visual Studio 2015 中。)但是,由于各种原因,窗口本身需要是不透明的(用于过滤器等)。我怎样才能最好地做到这一点?

【问题讨论】:

  • 我相信这是不可能的。

标签: c# winforms visual-studio screenshot


【解决方案1】:

即使通过PrintWindow方法隐藏,也可以找到您下方的窗口并获取它的屏幕截图:PrintWindow(参见PInvoke.net

Copying content from a hidden or clipped window in XP?

【讨论】:

    【解决方案2】:

    在 Winforms 中做起来非常简单。只需将表单的不透明度值设置为 99%。现在 Graphics.CopyFromScreen() 将不再看到您的窗口。

    除非你下面的窗口也是一个分层窗口,否则出于同样的原因,CopyFromScreen() 也不会看到它。然后你必须将不透明度设置为 0,复制并将其设置回 0.99。非常快,可能足以满足您的需求。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-17
      • 1970-01-01
      • 2017-08-26
      相关资源
      最近更新 更多