OI 10 Edittable ACCESSPOS (OpenInsight 64-bit)
At 21 OCT 2020 01:58:30PM Mihyar Al Masalma wrote:
OpenInsight 10.0.8.1 question.
For Edittable changed event, in the 32 bit version we used the ACCESSPOS to find the cell which triggered the event. In the 64bit version this no longer works, it always returns row1, col1.
Is there a new property we should be using instead of ACCESSPOS?
Side note, when the column has an option event associated with it, it will return the last position the option event was fired. no matter where the changed event happened.
At 21 OCT 2020 02:03PM Andrew McAuley wrote:
I know that a great deal of effort was expended to ensure backwards compatibility, but whilst waiting on a definitive reply have you checked out this blog entry?
World leaders in all things RevSoft
At 21 OCT 2020 04:29PM Carl Pates wrote:
HI Mihyar,
I'm afraid the fact that ACCESSPOS works for you like that in v9 is more by luck than by design. It's a property that is used by a lot of internal functions in the v9 EditTable to mark the position of cells before an operation is performed on them e.g. setting cell text and so on. This two-step process is basically an artifact of the early Windows SendMessage design for interacting with controls. The bottom line is you can only trust ACCESSPOS if _you_ set it first.
The property that holds the position of a notification is NOTIFYPOS in both v9 and v10, so that's the one that should be used to find out which cell raised an event. However, as per the article that Andrew mentioned, there is a very small possibility where it could give a problem, hence the new v10 events that accept the cell coordinates as arguments so there's no confusion on position.
Regards,
At 26 OCT 2020 12:25PM Mihyar Al Masalma wrote:
Thank you for the helpful reply. we moved all of our events to CELLCHANGED.
we tried NOTIFYPOS and it didn't do what we needed.