Next: Repeat Events, Previous: Drag Events, Up: Input Events [Contents][Index]
クリックイベントとドラッグイベントは、ユーザーがマウスボタンをリリースしたときに発生します。ボタンがリリースされるまでクリックとドラッグを区別することはできないので、リリース前にイベントが発生することはありません。
ボタンが押下されたらすぐに何か処理したい場合は、ボタンダウン(button-down)イベントを処理する必要があります11。これらはevent-typeのシンボル名に‘down-’が含まれることを除き、クリックイベントとまったく同じようなリストにより表現されます。‘down-’プレフィクスの後には、‘C-’や‘M-’のような修飾キープレフィクスが続きます。
関数read-key-sequence
は、コマンドバインディングをもたないボタンダウンイベントを無視します。したがって、Emacsコマンドループもこれらを無視します。これは、ボタンダウンイベントで何かしたい場合以外は、ボタンダウンイベントの定義について心配する必要がないことを意味します。ボタンダウンイベントを定義する通常の理由は、ボタンがリリースされるまで(モーションイベントを読み取ることにより)マウスモーションを追跡できるからです。Motion Eventsを参照してください。
ボタンダウン(button-down)はドラッグ(drag)の保守的なアンチテーゼです(訳注: 原文は“Button-down is the conservative antithesis of drag.”。ボタンダウンを着るような人種と麻薬を対比させたジョークのような気がしますが、すいません、よく分からないので直訳します)。