Rumah > pembangunan bahagian belakang > Tutorial C#.Net > C#开发实例-订制屏幕截图工具(十)在截图中包含鼠标指针形状

C#开发实例-订制屏幕截图工具(十)在截图中包含鼠标指针形状

黄舟
Lepaskan: 2017-03-14 13:41:47
asal
2355 orang telah melayarinya

在写一此帮助说明类的文档时,截取的图片如果还有鼠标的指针形状,看起来就更直观更友好一些。接下来就讲一下如何在截图中包含鼠标指针形状。

添加结构CURSORINFO:

[StructLayout(LayoutKind.Sequential)]
        struct CURSORINFO
        {
            public int cbSize;
            public int flags;
            public IntPtr hCursor;
            public Point ptScreenPos;
        }
Salin selepas log masuk

声明API

        [DllImport("user32.dll")]
        static extern bool GetCursorInfo(out CURSORINFO pci);
Salin selepas log masuk

定义枚举值:

private const int CURSOR_SHOWING = 0x00000001;
Salin selepas log masuk

添加方法:

        /// <summary>
        /// 将鼠标指针形状绘制到屏幕截图上
        /// </summary>
        /// <param name="g"></param>
        private void DrawCursorImageToScreenImage(ref Graphics g)
        {
            if (!this.IsCutCursor) { return; }

            CURSORINFO vCurosrInfo;
            vCurosrInfo.cbSize = Marshal.SizeOf(typeof(CURSORINFO));
            GetCursorInfo(out vCurosrInfo);
            if ((vCurosrInfo.flags & CURSOR_SHOWING) != CURSOR_SHOWING) return;
            Cursor vCursor = new Cursor(vCurosrInfo.hCursor);
            Rectangle vRectangle = new Rectangle(new Point(vCurosrInfo.ptScreenPos.X - vCursor.HotSpot.X, 
            vCurosrInfo.ptScreenPos.Y - vCursor.HotSpot.Y), vCursor.Size);

            vCursor.Draw(g, vRectangle);
        }
Salin selepas log masuk

添加方法调用:

OK,再去截图看看吧!


Atas ialah kandungan terperinci C#开发实例-订制屏幕截图工具(十)在截图中包含鼠标指针形状. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan