Подтвердить что ты не робот

Почему Java doClick() использует 68 миллисекунд, когда он вызывает doClick (pressTime)?

В doClick(), когда он вызывает doClick(pressTime), он отправляет 68 миллисекунд? Почему они выбрали 68 вместо более круглого номера? Это полностью произвольное число?

Из Java AbstractButton:

public void doClick() {
    doClick(68);
}
4b9b3361

Ответ 1

Возможно, это связано с тем, насколько быстро человек может щелкнуть по среднему значению.

Если вы посмотрите на этот таймер, с небольшим количеством экстерза, то можно достичь среднего уровня в 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');
  });
<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>

Ответ 2

  • обратите внимание, что большинство артефактов изображения действительны только для Metal L&F и только как значения по умолчанию, f.e. Windows L&F полностью игнорирует это, он не имеет этого метода как peer или возвращает для программирования языков, которые выполняются из сеанса Win,

  • doClick программно имитирует пресс JButton, например. от события мыши или ключа (TAB, ENTER)

  • doClick (int pressTime), чтобы визуально рисовать действие как информацию для пользователя, рисуя isPressed на экран, miliseconds from JVM возвращает мне очень близко число (1999 - 2001 for doClick(2000))

  • Очень низкое число в 68miliseconds не имеет никакого эффекта экрана, потому что не улавливается глазами людей, возможно, большинство ЖК-мониторов не могут перекрасить этот артефакт правильно,

  • answer by @Майкл Диббетс ближе к setMultiClickThreshhold (long threshhold),