>In a text box control I need to determine the user action that triggered either When or GotFocus events: was it TAB key, Left Mouse click or Right mouse click? LASTKEY() doesn't return mouse clicks, neither does KeyPress. When and GotFocus events fire before Click or RightClick; MouseDown doesn't fire at all in this scenario, so far as I can determine; and the MouseEnter nButton parameter returns zero, regardless of which mouse button is used.
>
>This seems so simple there must be some solution staring me in the face that I'm too fogged over with New Year's grog to see. Any ideas?
Start some event logging and see which events do happen - then place some code in them to store info about what happened into some properties you set - and don't forget to clean these properties when it loses focus. My bet is that mouseDown does fire, but not exactly when you expect it. Event log should show that.
Though I prefer to use MouseUp - because I have the habit of clicking in wrong places, then dragging away to inactive space, so the mouseUp won't do anything. I.e. it works so in the rest of the Windowses and apps on it, nothing gets triggered by mouseDown (except the look of the button), nothing happens until MouseUp.