First, about the condition "button pressed" - that is checked at the exact frame the conditional branch is executed, not a second sooner or later - and never again unless the command is repeated.
So no, a wait won't help - you'll need a loop to check again and again until the key is really pressed.
Second, the trigger position of a single event depends on its priority. If that is below player, then the event can only be triggered when the player stands on it.
If the priority is same as player, then the event blocks player movement on it and it can be triggered from the four adjacent tiles only.
All other cases, you'll need a different event at the triggering position and remote control this event.
It would be a lot easier to use "action button" on such an event.
I suggest adding a second page to it, conditioned to a self-switch set by this first page, and have that second page on action button to react to the player.