zoukankan      html  css  js  c++  java
  • Processing中mousePressed()和mousePressed的区别以及几种鼠标事件的概括。

    Processing提供了一个叫mousePressed()的函数和一个叫mousePressed的变量,用于监听鼠标按钮是否被按下,但两者的工作机制是不同的。
     
    1. mousePressed变量:
    当任何鼠标按钮被按下时,该值为true,如果没有按钮被按下(或被释放后),则为false。它存储并利用了鼠标的状态。

    2. mousePressed()函数:

    此函数在每次鼠标按钮被按下后被调用。当一个按钮被按下时,函数中的代码只运行一次。“鼠标按钮被按下”这个状态是用来触发一个动作的。

    3. mouseClicked()函数:

    在鼠标按钮被按下并释放后被调用。
     
    4. mouseMoved():
    函数在每次鼠标移动而鼠标按钮未被按下时被调用。
     
    5. mouseDragged()函数
    鼠标拖动()函数在鼠标按钮被按下时,每次鼠标移动时都会被调用一次。
     
    6. mouseWheel()函数:
    函数内的代码是在鼠标轮移动时运行的(有些鼠标没有滚轮,这个函数只适用于有滚轮的鼠标)。mouseWheel()中使用的getCount()函数在鼠标滚轮向下(朝向用户)旋转时返回正值,而另一个方向(向上或远离用户)则返回负值。在OS X上,如果启用了“natural”滚动模式,则返回的值是相反的。
     
    7. mouseReleased()函数:
    与mousePressed()相反。
     
    补充:
    1. mouseButton变量可以用来确定哪个按钮被按下。它的值包含 LEFT, CENTER, or RIGHT, 取决于最近一次按下的鼠标按钮(mouseButton变量保留其值直到按下另一个按钮)
    2. keyPressed、keyPressed()和keyReleased()与mousePressed、mousePressed()和mouseReleased()的工作机制和关系基本相同。
    3. 鼠标和键盘事件只有在程序有draw()时才会工作。如果没有draw(),代码只运行一次,然后停止监听事件。

    -----------------------------------------------------------------------

    Reference:

    1. https://processing.org/reference/libraries/

    2. 一个很好的鼠标动画示例:https://processing.org/examples/mousefunctions.html

     
  • 相关阅读:
    CentOS优化
    C++ 与OpenCV 学习笔记
    常用ubuntu命令
    对极几何笔记
    DBoW2 词袋模型笔记
    OKVIS(一)初始化流程及代码结构
    二进制描述子 BRIEF(ORB), BRISK, FREAK
    VIO 初始化小结
    VINS(十)FeatureManager(未完待续)
    VINS(九)Ceres Solver优化(未完待续)
  • 原文地址:https://www.cnblogs.com/binaryguy/p/13947858.html
Copyright © 2011-2022 走看看