我是靠谱客的博主 阳光皮带,最近开发中收集的这篇文章主要介绍Windows 窗体中的鼠标事件标准单击事件行为,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

标准单击事件行为

如 果要以正确顺序处理鼠标单击事件,需要知道在 Windows 窗体控件中单击事件的引发顺序。除对下面列表中的个别控件另有说明外,当按下并释放鼠标按钮(无论哪个按钮)时,所有 Windows 窗体控件都会以相同顺序引发单击事件。下面列表显示单击一次鼠标按钮所引发事件的顺序:

  1. MouseDown 事件。

  2. Click 事件。

  3. MouseClick 事件。

  4. MouseUp 事件。

以下是双击鼠标按钮所引发事件的顺序:

  1. MouseDown 事件。

  2. Click 事件。

  3. MouseClick 事件。

  4. MouseUp 事件。

  5. MouseDown 事件。

  6. DoubleClick 事件。(这可能有所不同,具体取决于相关控件是否将 StandardDoubleClick 样式位设为 true。有关如何设置 ControlStyles 位的更多信息,请参见 SetStyle 方法。)

  7. MouseDoubleClick 事件。

  8. MouseUp 事件。

有关阐释鼠标单击事件顺序的代码示例,请参见如何:在 Windows 窗体控件中处理用户输入事件

个别控件

下列控件不符合标准的鼠标单击事件行为:

  • Button、CheckBox、ComboBox 和 RadioButton 控件

    note注意

    对于 ComboBox 控件,如果用户单击编辑字段、按钮或列表中的项,则发生下面详细说明的事件行为。

    • 单击左键:ClickMouseClick

    • 单击右键:不引发任何单击事件

    • 双击左键:ClickMouseClickClickMouseClick

    • 双击右键:不引发任何单击事件

  • TextBox、RichTextBox、ListBox、MaskedTextBox 和 CheckedListBox 控件

    note注意

    当用户单击这些控件内的任何位置时,发生下面详细说明的事件行为。

    • 单击左键:ClickMouseClick

    • 单击右键:不引发任何单击事件

    • 双击左键:ClickMouseClickDoubleClickMouseDoubleClick

    • 双击右键:不引发任何单击事件

  • ListView 控件

    note注意

    只有当用户单击 ListView 控件中的项时,才会发生下面详细说明的事件行为。单击控件上的任何其他位置都不会引发任何事件。除下面所描述的事件外,还有 BeforeLabelEdit 和 AfterLabelEdit 事件,如果要对 ListView 控件进行验证,则您可能会用到这两个事件。

    • 单击左键:ClickMouseClick

    • 单击右键:ClickMouseClick

    • 双击左键:ClickMouseClickDoubleClickMouseDoubleClick

    • 双击右键:ClickMouseClickDoubleClickMouseDoubleClick

  • TreeView 控件

    note注意

    只有当用户在 TreeView 控件中单击项本身或项的右侧时,才会发生下面详细说明的事件行为。单击控件上的任何其他位置都不会引发任何事件。除下面描述的事件外,还有 BeforeCheck、BeforeSelect、BeforeLabelEdit、AfterSelect、AfterCheck 和 AfterLabelEdit 事件,如果要对 TreeView 控件进行验证,则您可能会用到这些事件。

    • 单击左键:ClickMouseClick

    • 单击右键:ClickMouseClick

    • 双击左键:ClickMouseClickDoubleClickMouseDoubleClick

    • 双击右键:ClickMouseClickDoubleClickMouseDoubleClick

切换控件的绘制行为

切换控件(如从 ButtonBase 类派生的控件)具有以下与鼠标单击事件相结合的独特绘制行为:

  1. 用户按鼠标按钮。

  2. 该控件以按下状态进行绘制。

  3. 引发 MouseDown 事件。

  4. 用户释放鼠标按钮。

  5. 该控件以凸起状态进行绘制。

  6. 引发 Click 事件。

  7. 引发 MouseClick 事件。

  8. 引发 MouseUp 事件。

    note注意

    如果用户在鼠标按钮处于按下状态时,将鼠标指针移出切换控件(例如,当鼠标按钮处于按下状态时将鼠标从 Button 控件中移出),则该切换控件将以凸起状态进行绘制,且只发生 MouseUp 事件。在这种情况下,ClickMouseClick 事件将不会发生。

最后

以上就是阳光皮带为你收集整理的Windows 窗体中的鼠标事件标准单击事件行为的全部内容,希望文章能够帮你解决Windows 窗体中的鼠标事件标准单击事件行为所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部