2010-07-14 62 views
0

好的,任何人都可以解釋Jing如何以覆蓋窗體拍攝屏幕截圖?它看起來是全屏幕拍攝並記錄所有可見的窗口句柄,並讓您在窗體中選擇特定的hwnd。可能是真的?如果是,那麼實現這一目標的重要步驟是什麼?可能是一個簡單的電影盒或沒有自定義控制我沒有機會在屏幕截圖時凍結屏幕?覆蓋圖(?)如何在JING中工作

謝謝!

回答

1

我對靖的知之甚少,無法確切知道它的用途。但是有兩個基本技巧。其中一個就像你提到的那樣,捕獲屏幕並以最高的無邊界形式顯示它。 Vista/Win7剪切工具就是這樣工作的。你會發現你需要的代碼在this thread的答案中開始。另一個,也許更有可能被Jing使用,與Spy ++相似,允許用戶移動鼠標並在窗口周圍繪製一個選擇矩形。它的好處是,它可以處理窗口調整大小或消失,而你有工具運行。您可以通過使用其TransparencyKey屬性設置爲BackColor值的屏幕大小的最頂層窗體來實現它。紫紅色是一種流行的選擇。您可以使用OnPaint()方法在此窗體上繪圖,圖形顯示在所有窗口的頂部。你需要一些P/Invoke(GetWindow)以Z軸順序迭代底層窗口,以知道用戶指向哪個窗口。 GetWindowRect()獲取窗口矩形。再加上一些麻煩來處理Aero躺在邊界的大小。

你可以在我的回答this thread的答案中找到示例代碼,讓你開始使用該技術。

+0

非常感謝。 – andySF 2010-07-15 04:00:32