有没有一种方法可以在使用C#编写的控制台应用程序中捕获鼠标滚轮事件,就像您会在GUI /窗口应用程序中捕获鼠标滚轮事件一样?
我想这样做是为了只滚动控制台中文本的一部分。
我已经在Google上搜索过了,但是我能找到的都是关于窗口应用程序的鼠标滚轮事件。
有没有一种方法可以在使用C#编写的控制台应用程序中捕获鼠标滚轮事件,就像您会在GUI /窗口应用程序中捕获鼠标滚轮事件一样?
我想这样做是为了只滚动控制台中文本的一部分。
我已经在Google上搜索过了,但是我能找到的都是关于窗口应用程序的鼠标滚轮事件。
创建全局系统钩子以捕捉鼠标滚轮事件(参考示例这里)
使用PInvoke检查您的控制台是否处于活动状态(可以在此处找到示例:确定当前应用程序是否已激活(具有焦点))
您可以扩展步骤2中的功能,获取窗口矩形请参见此处,并将鼠标位置与窗口位置相交