zoukankan      html  css  js  c++  java
  • C#获取屏幕鼠标坐标点颜色

    [DllImport("user32.dll")]
           private static extern IntPtr GetDC(IntPtr hwnd);
     
           [DllImport("gdi32.dll")]
           private static extern int GetPixel(IntPtr hdc, Point p);
     
           public static Color getColor(Point p)
           {
     
               // Point p = new Point(MousePosition.X, MousePosition.Y);//取置顶点坐标
               IntPtr hdc = GetDC(new IntPtr(0));//取到设备场景(0就是全屏的设备场景)
               int c = GetPixel(hdc, p);//取指定点颜色
               int r = (c & 0xFF);//转换R
               int g = (c & 0xFF00) / 256;//转换G
               int b = (c & 0xFF0000) / 65536;//转换B
               // pictureBox1.BackColor = Color.FromArgb(r, g, b);
               return Color.FromArgb(r, g, b);
     
           }

      测试例子:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    private void button1_Click(object sender, EventArgs e)
    {
        //测试X在200,Y在120 到500 的颜是否不等于 Color.FromArgb(255, 246, 246, 246);
        string d = DateTime.Now.ToLongTimeString();
        Color cl = Color.FromArgb(255, 246, 246, 246);
        Point p = new Point(200,0);
       for (int h = 120; h < 500; h+=8) {
            p.Y = h;
     
        if(getColor(p).Equals(cl)==false ){
     
              Text =""+ h;
           break;
         }
     
        }
         
        Text = d +":"+  DateTime.Now.ToLongTimeString() +"  "+ p ;
     
    }
  • 相关阅读:
    Inter IPP 跟 Microsoft V100编译器区别
    目标描述(基于区域的描述)
    目标描述(基于边界的描述)
    目标表达(基于区域的表达)
    表达描述(基于变换的表达)
    目标表达(基于边界的表达)
    分割技术扩展
    分水岭分割算法
    借助均移确定聚类中心
    借助过度区选择阈值
  • 原文地址:https://www.cnblogs.com/soundcode/p/11696232.html
Copyright © 2011-2022 走看看