1. RE: Combo BoxEx Notification
> I have a major problem that is driving me nuts, it is also to deal with
> the comboboex
<SNIP>
> --NMCBEENDEDITA
> --{
> -- NMHDR hdr;
> -- BOOL fChanged;
> -- int iNewSelection;
> -- char szText[CBEMAXSTRLEN];
> -- int iWhy;
> --}
>
> constant
> NMHDR_hwndFrom = 0,
> NMHDR_idFrom = 4,
> NMHDR_code = 8,
> NMCB_fChanged = 12,-- BOOL so needs only peek/poke
> NMCB_iNewSelection = 13,
> NMCB_szText = 17,-- CHAR so needs only peek/poke
> NMCB_iWhy = 18,
>
> CBEN_FIRST = (-800),
> CBEN_ENDEDIT = (CBEN_FIRST - 5),
> CBENF_RETURN = 2,
<SNIP>
Hiyas Jordah =)
Sorry to say, but your structure in Euphoria does not match that
from the C declaration. You are reading NMCB_iWhy from the middle of
the string variable declared before it...
char szText[CBEMAXSTRLEN];
This field is a string CBEMAXSTRLEN bytes long but your Euphoria struc
your saying its only one byte which is incorrect... I dont have a copy
of the structure here at work so I cant tell you offhand how many bytes
it *should* be. If I dont see another post from you later on tonight I
will find it for you and repost.
Don Phillips
2. RE: Combo BoxEx Notification
> --NMCBEENDEDITA
> --{
> -- NMHDR hdr;
> -- BOOL fChanged;
> -- int iNewSelection;
> -- char szText[CBEMAXSTRLEN];
> -- int iWhy;
> --}
> constant
> NMHDR_hwndFrom = 0,
> NMHDR_idFrom = 4,
> NMHDR_code = 8,
> NMCB_fChanged = 12,-- BOOL so needs only peek/poke
> NMCB_iNewSelection = 13,
> NMCB_szText = 17,-- CHAR so needs only peek/poke
> NMCB_iWhy = 18,
>
> CBEN_FIRST = (-800),
> CBEN_ENDEDIT = (CBEN_FIRST - 5),
> CBENF_RETURN = 2,
Hiyas Jordah =)
Try this one out. It should be correct by the definition (if I
calculated the offsets right).
NMHDR_hwndFrom = 0,
NMHDR_idFrom = 4,
NMHDR_code = 8,
NMCB_fChanged = 12, -- I believe BOOL is a synonym for
DWORD
NMCB_iNewSelection = 16,
NMCB_szText = 20, -- CBEMAXSTRLEN is defined as 260
NMCB_iWhy = 280,
... blah blah blah
Don Phillips
3. RE: Combo BoxEx Notification
Its amazing how simple this one is. it must have been the headache,
thanx Don for your help.
jordah
Don Phillips wrote:
> > --NMCBEENDEDITA
> > --{
> > -- NMHDR hdr;
> > -- BOOL fChanged;
> > -- int iNewSelection;
> > -- char szText[CBEMAXSTRLEN];
> > -- int iWhy;
> > --}
>
> > constant
> > NMHDR_hwndFrom = 0,
> > NMHDR_idFrom = 4,
> > NMHDR_code = 8,
> > NMCB_fChanged = 12,-- BOOL so needs only peek/poke
> > NMCB_iNewSelection = 13,
> > NMCB_szText = 17,-- CHAR so needs only peek/poke
> > NMCB_iWhy = 18,
> >
> > CBEN_FIRST = (-800),
> > CBEN_ENDEDIT = (CBEN_FIRST - 5),
> > CBENF_RETURN = 2,
>
> Hiyas Jordah =)
>
> Try this one out. It should be correct by the definition (if I
> calculated the offsets right).
>
> NMHDR_hwndFrom = 0,
> NMHDR_idFrom = 4,
> NMHDR_code = 8,
> NMCB_fChanged = 12, -- I believe BOOL is a synonym for
>
> DWORD
> NMCB_iNewSelection = 16,
> NMCB_szText = 20, -- CBEMAXSTRLEN is defined as 260
> NMCB_iWhy = 280,
>
> ... blah blah blah
>
> Don Phillips
>
>