C# 鼠标跟随放大镜

        private void snapshot_mouse_move(object sender, MouseEventArgs e)
        {
            int magnification = 4;//倍率,调节放大倍数,可由TrackBar控制调节    
            const int imgWidth = 160;//放大后图片的宽度
            const int imgHeight = 160;//放大后图片的高度
            DateTime dateTime = DateTime.Now;
            TimeSpan ts = dateTime - currentTime;
            if (ts.TotalMilliseconds > 1000 / 60)//60帧最高采集率
            {
                int index = int.Parse((string)((PictureBox)sender).Tag);

                //对图像进行放大显示         
                Bitmap bt = new Bitmap(imgWidth / magnification, imgHeight / magnification);
                Graphics g = Graphics.FromImage(bt);
                g.CopyFromScreen(
                         new Point(Cursor.Position.X - imgWidth / (2 * magnification),
                                   Cursor.Position.Y - imgHeight / (2 * magnification)),
                         new Point(0, 0),
                         new Size(imgWidth / magnification, imgHeight / magnification));
                IntPtr dc1 = g.GetHdc();
                g.ReleaseHdc(dc1);
                this.Cursor = new Cursor((new Bitmap(bt, imgWidth, imgHeight)).GetHicon());
                currentTime = dateTime;
            }
        }

        private void snapshot_mouse_leave(object sender, EventArgs e)
        {
            this.Cursor = Cursors.Default;
        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值