クリック&ドラッグイベントは、ユーザーがマウスボタンを離したときに発生します。ボタンが離されるまでクリックとドラッグを区別する方法がないため、それより前に発生することはありません。
ボタンが押された直後に処理を実行したい場合は、button-down イベントを処理する必要があります。20 これらのイベントは、ボタンが押された直後に発生します。 これらは、event-type というシンボル名に ‘down-’ という接頭辞が含まれている点を除けば、クリックイベント(クリックイベント を参照)とまったく同じ形式のリストで表されます。 ‘down-’ という接頭辞は、‘C-’ や ‘M-’ といった修飾キーの接頭辞の後に続きます。
関数 read-key-sequence
は、コマンドバインディングが設定されていないボタンダウンイベントをすべて無視します。そのため、Emacs
のコマンドループも同様にそれらを無視します。つまり、ボタンダウンイベントに何らかの動作をさせたい場合を除き、わざわざ定義する必要はありません。通常、ボタンダウンイベントを定義するのは、ボタンが離されるまで(モーションイベントを読み取ることで)マウスの動きを追跡するためです。モーションイベント を参照してください。