如何区分 .Net 中的单击和双击?

2024-01-28

我想重写 OnMouseClick 和 OnMouseDoubleClick 并根据使用的单击样式执行不同的操作。

问题是单击和双击都会发生 OnMouseClick,并且在 OnMouseDoubleClick 之前被调用。

我确信这一定是一个常见的要求,所以我想我错过了一些非常明显的东西。有人可以帮我补一下吗?

编辑添加:MouseEventArgs.Clicks 计数没有帮助。在双击的情况下,第一次单击将在 OnMouseClick 中处理为单击,且 MouseEventArgs.Clicks == 1。

编辑添加:对象是图像缩略图。单击即可打开和关闭选择以进行导出。双击应该使缩略图全屏显示。选择和“激活”动作是正交的。这可能表明这两个操作存在根本问题......

干杯, 抢


这种情况在整个 Windows 中都会发生。我认为他们没有添加任何特殊的东西来在.Net 中处理它。

处理这个问题的正常方法是

  • a) 只需单击一下即可 你希望在双倍之前发生 单击,如选择。
  • b) 如果这不是一个选项,则在单击事件上启动计时器。在计时器滴答时,执行单击操作。如果双击事件先发生,则终止计时器,然后执行双击操作。

您设置的时间量应等于系统的双击时间(用户可以在控制面板中指定)。它可以从 System.Windows.Forms.SystemInformation.DoubleClickTime 获得。完整的详细信息在 MSDN 中,here http://msdn.microsoft.com/en-us/library/ms172533.aspx

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何区分 .Net 中的单击和双击? 的相关文章

  • 启动时出现 OData v4 错误:找不到段“Whatever”的资源

    我正在构建新的 v4 服务 一切进展顺利 直到我为新模型 实体添加了新控制器 并在启动站点进行测试运行时收到此错误 控制器似乎编码正确 就像其他控制器一样 控制器 CustomersOData 中的操作 GetFeed 上的路径模板 Cus
  • 在新的浏览器进程中打开 URL

    我需要在新的浏览器进程中打开 URL 当浏览器进程退出时我需要收到通知 我当前使用的代码如下 Process browser new Process browser EnableRaisingEvents true browser Star
  • 互斥体实现可以互换(独立于线程实现)

    所有互斥体实现最终都会调用相同的基本系统 硬件调用吗 这意味着它们可以互换吗 具体来说 如果我使用 gnu parallel算法 使用openmp 并且我想让他们称之为线程安全的类我可以使用boost mutex用于锁定 或者我必须编写自己
  • 如何从 .resx 文件条目获取注释

    资源文件中的字符串有名称 值和注释 The ResXResourceReader类让我可以访问名称和值 有办法看评论吗 你应该能够得到Comment via ResXDataNode class http msdn microsoft co
  • 存储来自其他程序的事件

    我想将其他应用程序的事件存储在我自己的应用程序中 事件示例 打开 最小化 Word 或打开文件时 这样的事可能吗 运行程序 http msdn microsoft com en us library ms813609 aspx and 打开
  • 在 C# 中循环遍历文件文件夹的最简单方法是什么?

    我尝试编写一个程序 使用包含相关文件路径的配置文件来导航本地文件系统 我的问题是 在 C 中执行文件 I O 这将是从桌面应用程序到服务器并返回 和文件系统导航时使用的最佳实践是什么 我知道如何谷歌 并且找到了几种解决方案 但我想知道各种功
  • 用于检查项目文件中的项目变量和引用路径的 api

    我正在研究一个 net application VS2010 与 x 没有 解和变量号这些解决方案中的项目数量 我需要检查项目属性 特定于一定数量的项目 是否同质 并且检查 验证构建期间的参考路径 有没有一个API是这样的吗 如果没有 我该
  • 回发或回调参数无效。使用“”启用事件验证

    当我从客户端回发页面时 出现以下错误 我有修改客户端 asp ListBox 的 JavaScript 代码 我们该如何解决这个问题 错误详细信息如下 Server Error in XXX Application Invalid post
  • ASP.NET:获取自 1970 年 1 月 1 日以来的毫秒数

    我有一个 ASP NET VB NET 日期 我试图获取自 1970 年 1 月 1 日以来的毫秒数 我尝试在 MSDN 中寻找方法 但找不到任何东西 有谁知道如何做到这一点 从 NET 4 6 开始 该方法ToUnixTimeMillis
  • PlaySound 可在 Visual Studio 中运行,但不能在独立 exe 中运行

    我正在尝试使用 Visual Studio 在 C 中播放 wav 文件 我将文件 my wav 放入项目目录中并使用代码 PlaySound TEXT my wav NULL SND FILENAME SND SYNC 我按下播放按钮 或
  • 上下文敏感与歧义

    我对上下文敏感性和歧义如何相互影响感到困惑 我认为正确的是 歧义 歧义语法会导致使用左推导或右推导构建多个解析树 所有可能的语法都是二义性的语言是二义性语言 例如 C 是一种不明确的语言 因为 x y 总是可以表示两个不同的事物 如下所述
  • 使用 Moq 使用内部构造函数模拟类型

    我正在尝试模拟 Microsoft Sync Framework 中的一个类 它只有一个内部构造函数 当我尝试以下操作时 var fullEnumerationContextMock new Mock
  • 等待线程完成

    private void button1 Click object sender EventArgs e for int i 0 i lt 15 i Thread nova new Thread Method nova Start list
  • HttpWebRequest 在第二次调用时超时

    为什么以下代码在第二次 及后续 运行时超时 代码挂在 using Stream objStream request GetResponse GetResponseStream 然后引发 WebException 表示请求已超时 我已经尝试过
  • 如何从main方法调用业务对象类?

    我已将代码分为业务对象 访问层 如下所示 void Main Business object public class ExpenseBO public void MakeExpense ExpensePayload payload var
  • 如何对 Web Api 操作进行后调用?

    我创建了一个 Web API 操作 如下所示 HttpPost public void Load string siteName string providerName UserDetails userDetails implementat
  • gcc 的配置选项如何确定默认枚举大小(短或非短)?

    我尝试了一些 gcc 编译器来查看默认枚举大小是否很短 至少一个字节 强制使用 fshort enums 或无短 至少 4 个字节 强制使用 fno short enums user host echo Static assert 4 si
  • Server.MapPath - 给定的物理路径,预期的虚拟路径

    我正在使用这行代码 var files Directory GetFiles Server MapPath E ftproot sales 在文件夹中查找文件 但是我收到错误消息说 给定物理路径但虚拟路径 预期的 我对在 C 中使用 Sys
  • 编译时“strlen()”有效吗?

    有时需要将字符串的长度与常量进行比较 例如 if line length gt 2 Do something 但我试图避免在代码中使用 魔法 常量 通常我使用这样的代码 if line length gt strlen Do somethi
  • 如何使用 Word Automation 获取页面范围

    如何使用办公自动化找到 Microsoft Word 中第 n 页的范围 似乎没有 getPageRange n 函数 并且不清楚它们是如何划分的 这就是您从 VBA 执行此操作的方法 转换为 Matlab COM 调用应该相当简单 Pub

随机推荐

  • 如何获取数组中元素的层次结构路径

    我总是想获得数组中元素的确切路径 数组示例 array a gt aaa b gt array bbb1 bbb2 gt array bbb3 bbb4 因此 为了到达 bbb4 我需要经过 b gt bbb2 gt bbb4 如何获取多维
  • 如何构造 LINQ to Entities 查询来直接加载子对象,而不是调用 Reference 属性或 Load()

    我是使用 LINQ to Entities 或实体框架 无论他们如何称呼它 的新手 我正在编写很多这样的代码 var item from InventoryItem item in db Inventory where item ID id
  • 如何使用 xsl-fo 和 apache fop 0.95 显示固定图像高度和宽度

    我正在尝试修复使用 fop 0 95 生成的 pdf 中图像的高度和宽度 这是用于它的代码
  • Nexus 6P 上硬件传感器的 Android 采样率变化

    我正在开发一个 Android 应用程序 用于研究 并且正在读取多个传感器数据 例如加速度计 陀螺仪 气压计等 所以我有 4 台 Nexus 6P 设备 全部配备最新版本工厂形象 https developers google com an
  • 到底是什么决定了 JavaScript 模块在 .html 中的执行顺序?

    我读到了首先加载最先出现的模块 https javascript info import export 这不是真的 在我回答这个问题之前 我了解到 首先执行没有导入的模块 叶模块 导入的模块只有在其导入的模块执行后才会执行 这让我能够解释这
  • 将 SQL STATISTICS TIME 和 IO 捕获到表中

    有没有办法捕捉STATISTICS IO and TIME在 T SQL 中 用于登录表 Sort of 与给出的统计数据相同SET STATISTICS TIME由查询统计 DMV 捕获 sys dm exec query stats h
  • 下一个更高/更低的 IEEE 双精度数

    我正在做高精度的科学计算 在寻找各种效果的最佳表示时 我不断想出想要获得下一个更高 或更低 可用双精度数的理由 本质上 我想要做的是将 1 添加到 double 的内部表示中的最低有效位 困难在于 IEEE 格式并不完全统一 如果要使用低级
  • 如何在反应传单中制作椭圆形?

    我想在反应传单中制作一个椭圆形 我已经检查过这个问题如何在react leaflet中制作一个椭圆形 https stackoverflow com questions 49089011 how can one make an ellips
  • Lombok 和 Jackson - 冲突/不明确的属性名称定义

    我收到一条警告消息 com fasterxml jackson databind JsonMappingException Conflicting ambiguous property name definitions implicit n
  • 使用随机森林的 AUC 基特征重要性

    我正在尝试使用随机森林和逻辑回归来预测二元变量 我的类别严重不平衡 Y 1 的大约 1 5 随机森林中的默认特征重要性技术基于分类准确性 错误率 这已被证明对于不平衡类来说是一个不好的衡量标准 请参阅here http www biomed
  • 为 mac ruby​​ 开发设置 .emacs 文件

    我在 Mac 上的 emacs 中加载 ruby 模式时遇到困难 emacs 文件位于 emacs 我已经向其中添加了几个命令 许多命令是从该站点粘贴的 但似乎没有一个被加载 有什么建议吗 我不确定文件是否未加载或者命令语法错误 我所需要的
  • 抛出“std::out_of_range”实例后调用终止

    我绝对是编程初学者 我在构建以下代码时遇到此错误 error terminate called after throwing an instance of std out of range what vector M range check
  • 发行说明,有什么用? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • windows下修改ip地址的脚本

    我使用计算机通过以太网与硬件进行通信 为了与此设备通信 我将 IP 设置为 192 168 0 11 将子网掩码设置为 255 255 255 0 将 IPv4 的默认网关设置为 192 168 0 1 为了使用互联网 我通过控制面板选择
  • 如何将几何数据字段显示为文本

    我将 DELPHI 与 ADO 和 SQL Server 2014 一起使用 在我们的数据库表中 有一个用于几何数据的空间列 我们可以在该字段中读取和写入数据 更多信息如下 https learn microsoft com de de s
  • 找不到 ios 文档的 /var/mobile/applications 目录

    我正在尝试在连接到 xcode 的 iPad 设备上运行发布版本以进行调试 我不确定 但猜测当我这样做时 文档目录最终会出现在我的本地计算机上的某个位置 而不是在 iPad 上 就像我在没有 xcode 的情况下运行它时一样 我得到如下目录
  • 运行时动态选择方法;访客模式或反射的替代方案

    我正在开发一个小型游戏模板 其世界由如下节点组成 World Zone Cell Actor Actor Item Where a World可以包含多个Zone物体 一个Zone可以包含多个Cell对象等 其中每一个都实现了Node接口
  • perl 如何将字符串转换为日期时间?

    我尝试在 perl 中将字符串转换为日期 但出现错误 use strict use warnings use DateTime use Date Manip my date ParseDate 20111121 print today is
  • 服务工作线程不从缓存返回文件

    我正在尝试使用 Service Worker 缓存单页 Web 应用程序 它应该从缓存中获取所有文件 并仅在发布新的服务工作线程版本时更新该缓存 使用预缓存功能 我将一些文件写入缓存 如下所示 function precache retur
  • 如何区分 .Net 中的单击和双击?

    我想重写 OnMouseClick 和 OnMouseDoubleClick 并根据使用的单击样式执行不同的操作 问题是单击和双击都会发生 OnMouseClick 并且在 OnMouseDoubleClick 之前被调用 我确信这一定是一