From: milonass on 9 Jun 2010 06:35 Hi Mihai, the value of the stlye is 0x50000065 Regards. Thomas "Mihai N." wrote: > > ok, i found it. The creation style (of the tree control) > > TVS_EX_FADEINOUTEXPANDOS > > which anyway does not work is responsible for this strange behaviour. > > Veird. > Without this post I would have said that you run on a right-to-left system. > Or the extended style of the control is WS_EX_LAYOUTRTL. > The behavior is 100% consistent with that. > Try putting C: and Program Files (x86) in Notepad, each on one line, > right-click and check "Right to left Reading order" > You will see that adding spaces at end will not change things, but adding > a letter will do, exactly as you describe. > > Now, TVS_EX_FADEINOUTEXPANDOS is defined as 0x0040 (in CommCtrl.h) > and WS_EX_LAYOUTRTL is defined as 0x00400000L (in WinUser.h) > I wonder is there is some extra shifting going on with the extended styles. > Maybe this also explains the "anyway does not work" part. > > Can you put back TVS_EX_FADEINOUTEXPANDOS, fire up Spy++, and give us the hex > values of the flags and extended flags for the control? > > Sure, you don't have to do this. > But it would be nice to know the reason, not just "some magic stuff happens" > :-) > > > -- > Mihai Nita [Microsoft MVP, Visual C++] > http://www.mihai-nita.net > ------------------------------------------ > Replace _year_ with _ to get the real email > > . >
From: milonass on 9 Jun 2010 06:35
Hi Mihai, I'll try it. Give me a lttle time. Best regards, Thomas "Mihai N." wrote: > > ok, i found it. The creation style (of the tree control) > > TVS_EX_FADEINOUTEXPANDOS > > which anyway does not work is responsible for this strange behaviour. > > Veird. > Without this post I would have said that you run on a right-to-left system. > Or the extended style of the control is WS_EX_LAYOUTRTL. > The behavior is 100% consistent with that. > Try putting C: and Program Files (x86) in Notepad, each on one line, > right-click and check "Right to left Reading order" > You will see that adding spaces at end will not change things, but adding > a letter will do, exactly as you describe. > > Now, TVS_EX_FADEINOUTEXPANDOS is defined as 0x0040 (in CommCtrl.h) > and WS_EX_LAYOUTRTL is defined as 0x00400000L (in WinUser.h) > I wonder is there is some extra shifting going on with the extended styles. > Maybe this also explains the "anyway does not work" part. > > Can you put back TVS_EX_FADEINOUTEXPANDOS, fire up Spy++, and give us the hex > values of the flags and extended flags for the control? > > Sure, you don't have to do this. > But it would be nice to know the reason, not just "some magic stuff happens" > :-) > > > -- > Mihai Nita [Microsoft MVP, Visual C++] > http://www.mihai-nita.net > ------------------------------------------ > Replace _year_ with _ to get the real email > > . > |