An action or occurrence to which a program might respond. Examples include state changes, data transfers, key presses, and mouse movements.