c# - 在控制台应用程序中检测系统范围的滚动

标签 c# background scroll console-application

我想知道如何制作一个控制台应用程序来检测用户是否使用鼠标滚轮滚动(屏幕上的任何位置)。

我希望它成为控制台应用程序的原因是我可以在后台运行它。我现在已经搜索了很多,但似乎找不到我需要的东西。

最佳答案

你可以阅读这个主题:

Mouse Wheel Event (C#)

如果您有自己的控件,则可以通过设计器或动态代码轻松地设置此类内容。但是,鼠标需要位于您的控件之上,这样您才能接收到该事件。因此,在您的情况下,您需要在消息过滤器上注册。小心,不要在那里做太多事情。如果你在这个地方做太多,这可能会减慢你的整个应用程序:

public bool PreFilterMessage(ref Message m) 

您也可以在不显示窗体的情况下设置 Windows 窗体项目。这是一个 windows 窗体项目的 program.cs 代码:

static class Program
{
    /// <summary>
    /// The main entry point for the application.
    /// </summary>
    [STAThread]
    static void Main()
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        Application.Run(new WindowlessApplicationContext());

    }
}

/// <summary>
/// The window less application context.
/// </summary>
internal class WindowlessApplicationContext : ApplicationContext
{
    /// <summary>
    /// Standard constructor.
    /// </summary>
    public WindowlessApplicationContext()
    {
        try
        {
            //Your code

        }
        // you mayy add catch here
        finally
        {
            //Close process
            Environment.Exit(0);
        }
    }
}

关于c# - 在控制台应用程序中检测系统范围的滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15380252/

相关文章:

c# - 在 Web.config 中将信任级别设置为高会使应用程序运行速度变慢?

ios - 定时器在背景抖动中不起作用

iphone - 如何为分组 TableView 设置背景图像?

jquery - 如何使用 jquery 禁用自动滚动到顶部?

c# - 测试 URL 和查询字符串是否有效

c# - 从文件中读取多个字节数组

c# - 不支持带有 Autofac 的 Net Core 3.0 抛出 IServiceProvider

表格为空时的 iPhone UITableView 图像背景

jQuery 计数器在滚动时开始递增,但不会在最大值处停止

android - ListView 没有空间在较小的屏幕上显示内容