首页 > 编程语言 >【C#】C# 限制鼠标的移动范围

【C#】C# 限制鼠标的移动范围

时间:2022-11-09 18:03:36浏览次数:37  
标签:right 鼠标 C# int static ClipCursor 移动 public RECT

public struct RECT
        {
            public int Left;
            public int Top;
            public int Right;
            public int Bottom;
            public RECT(Int32 left, Int32 top, Int32 right, Int32 bottom)
            {
                Left = left;
                Top = top;
                Right = right;
                Bottom = bottom;
            }
        }
[DllImport("user32.dll")]
        static extern bool ClipCursor(IntPtr lpRect);
        [System.Runtime.InteropServices.DllImport("User32.dll")]
        static extern bool ClipCursor(ref RECT lpRect);
        public static void LimitMouse(int left, int top, int right, int bottom)
        {
            var rect = new RECT(left, top, right, bottom);
            bool flag = ClipCursor(ref rect);
        }
        public static void LimitMouse()
        {
            bool flag = ClipCursor(IntPtr.Zero);
        }

以上方法测试,可用,但是有一个问题,当使用双屏显示器的时候,设置的鼠标范围,超出一块屏幕的位置时,也就是在副屏的范围,该功能变失效了。

 

标签:right,鼠标,C#,int,static,ClipCursor,移动,public,RECT
From: https://www.cnblogs.com/mqxs/p/16874672.html

相关文章

  • react初始化代码下载太慢的解决方案
    react官方提供的初始方式:npxcreate-react-appmy-appcdmy-appnpmstart 这个方式的第一句npxcreate-react-appmy-app是从官网  https://registry.npmjs.......
  • mac下java和mvn的环境配置
    原文:https://blog.csdn.net/w605283073/article/details/111770386   https://www.pudn.com/news/62f8c6905425817ffc462029.htmlmvn打包报错:Nocompilerisprov......
  • CF1285D Dr. Evil Underscores 题解
    给定一个序列\(a\),选取一个\(x\),使\(\max_{i=1}^na_i\oplusx\)最小。看到这种题直接按位考虑,如果最高位全是\(1\)那把\(x\)的这位全变成\(1\),如果最高位全是\(......
  • unity 对rotation、 localPosition、 localScale 进行修改
    unity对 rotation、localPosition、localScale进行修改 rotation:1、xxx.transform.localEulerAngles=newVector3(0.0f,0.0f,0.0f); 2、xxx.transform.rotat......
  • python中@classmethod @staticmethod的使用方法及区别
    https://stackoverflow.com/questions/136097/difference-between-staticmethod-and-classmethod@staticmethod:如果类里面不想某个方法使用类属性和调用其它方法就可以使......
  • centos使用lftp备份文件
    一直以来项目的文件没有备份,最近需要增加备份,本来以为备份是IT的工作,结果IT说工作忙,拖了半个月给分配完ftp服务器后说不给备份,需要我们开发自己备份。。。我特么***对于ft......
  • 视频融合平台EasyCVR如何调用数据库导入导出接口?具体操作步骤是什么?
    EasyCVR视频融合平台部署轻快灵活,支持视频汇聚管理,可提供的视频功能包括:视频监控、直播录像、云存储、检索回看、智能告警、平台级联等。  有用户提出需求,想要定时保......
  • AbstractQueue
    AbstractQueue /**ORACLEPROPRIETARY/CONFIDENTIAL.Useissubjecttolicenseterms.**//**WrittenbyDougLeawithassistancefrommembersofJCP......
  • LeetCode 605. 种花问题
    贪心classSolution{public:boolcanPlaceFlowers(vector<int>&flowerbed,intn){intm=flowerbed.size();intpre=-1;for(in......
  • android studio 升级 Android Studio Dolphin | 2021.3.1 Patch 1
    androidstudio升级AndroidStudioDolphin|2021.3.1Patch1后,xml布局预览界面报错一开始以为是那些警告导致的,有很多黄色的xml警告,比如命名的名字不是英文,或者设置......