Er, what? OnPress is a notification, not an event. Notifications are sent to game objects by the UICamera -- OnPress, OnClick, OnHover, OnTooltip, etc -- are all notifications. You implement their handling by having a script that has the appropriate function, such as:
void OnPress (bool isPressed) { Debug.Log("Pressed? " + isPressed); }
If you are trying to
subscribe to remote notifications, you need to use UIEventListener. This will cause a delegate to be called as a result of a notification coming in.
It's the same thing with the OnClick EventDelegate on the Button. When the button receives a click notification, it will trigger the event sent on the button. It's there for convenience.
It's very important to understand the difference.