为什么Java doClick()在调用doClick(pressTime)时使用68毫秒?

Ian*_*Ian 13 java swing delay jbutton visual-artifacts

doClick()它调用时doClick(pressTime)它发送68毫秒?为什么他们决定68而不是更多的数字呢?这是一个完全随意的数字吗?

来自Java AbstractButton:

public void doClick() {
    doClick(68);
}
Run Code Online (Sandbox Code Playgroud)

Tsc*_*cka 6

这可能与人类平均点击速度有多快有关.

如果你看一下这个计时器,有点偏心,平均可以达到68毫秒.

他们可能只是简单地进行了如下所示的设置,有一个好的平均点击持续时间,然后将其用作默认值.

var timer = 0;
var results = [];
$('#clicktest').on('mousedown',function() {
    timer = window.performance.now();
});
$('#clicktest').on('mouseup',function() {
    results.push(window.performance.now()-timer);
    var total = 0;
    for(c=0;c<results.length;c++) {
        total+= results[c];
    }
    $('#output').text('Average click duration '+ Math.round(total/results.length)+'ms');
  });
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="clicktest">Click me</button>
<div id="output">Average click duration N/A</div>
Run Code Online (Sandbox Code Playgroud)