像螢幕取色工具那樣,該如何獲取該座標,該點的顏色值呢,這裡還是利用原生態的api方法來實現。
api宣告:
/// ///獲取指定視窗的裝置場景
///
///
將獲取其裝置場景的視窗的控制代碼。若為0,則要獲取整個螢幕的dc
///
指定視窗的裝置場景控制代碼,出錯則為0
[dllimport("user32.dll")]
public static extern
intptr getdc(intptr hwnd);
/// ///
釋放由呼叫getdc函式獲取的指定裝置場景
///
///
要釋放的裝置場景相關的視窗控制代碼
///
要釋放的裝置場景控制代碼
///
執行成功為1,否則為0
[dllimport("user32.dll")]
public static extern
int32 releasedc(intptr hwnd, intptr hdc);
/// ///
在指定的裝置場景中取得乙個畫素的rgb值
///
///
乙個裝置場景的控制代碼
///
邏輯座標中要檢查的橫座標
///
邏輯座標中要檢查的縱座標
///
指定點的顏色
[dllimport("gdi32.dll")]
public static extern uint getpixel(intptr hdc, int nxpos, int nypos);
使用:
publiccolor getcolor(int x, int y)
這裡的引數x,y,就是我們獲取到的滑鼠座標。傳送門:c#_動態獲取滑鼠座標
。
C 動態獲取滑鼠位置的顏色
api宣告 獲取指定視窗的裝置場景 將獲取其裝置場景的視窗的控制代碼。若為0,則要獲取整個螢幕的dc 指定視窗的裝置場景控制代碼,出錯則為0 dllimport user32.dll public static extern intptr getdc intptr hwnd 釋放由呼叫getdc函式...
C 動態獲取滑鼠位置的顏色
api宣告 獲取指定視窗的裝置場景 將獲取其裝置場景的視窗的控制代碼。若為0,則要獲取整個螢幕的dc 指定視窗的裝置場景控制代碼,出錯則為0 dllimport user32.dll public static extern intptr getdc intptr hwnd 釋放由呼叫getdc函式...
c 獲取滑鼠位置的顏色
基本思路 由於從dc中獲取顏色的方法有一定的問題,有些情況下不能很好的支援。所以採用影象的方式。1 從螢幕上獲取螢幕的影象。2 從影象上獲取座標點的顏色。話不多說,直接上 public partial class form1 form private void button1 click objec...