[quote=170153:@Travis Hill]Back then, a TextField and TextArea were the same Win32 control. They haven’t been for quite a while. If you want the same behavior as those older versions, you could just setup a single line TextArea- which I think you already mentioned. That’s what running in the old version is doing.
Now they’re different controls, what you’re seeing is likely a consequence of the TextField having mouse-over effects when run under newer Windows theme engines in a non-compositing window. Enabling Window compositing might be the way to ‘fix’ what Windows is doing to that control in your scenario, but it does break several things- including any projects that draw outside Paint events- so it’s something we have to work through carefully.[/quote]
You are right, looking closer at the older project there is some bevel on the frame of the field showing it is a TextArea.
I understand better from your explanation. I think we have two conflicting issues here : the legitimate concern for Xojo that turning on window compositing may break now deprecated for quite a while drawing outside of paint, versus concern from users expecting a control to remain at the zorder he fixed upon design. When I place a control at the back, I do not expect it to spring like a kangaroo and traverse all controls in front to punch the user.
So to preserve bad programming creates a very nasty bug for users who simply try to use Xojo by the book.
OK. Let us pity for those who keep very bad habits from a time long past, and nevertheless see what can be done for innocent Xojo users who should be able to expect controls to stay where they belong.
The single line, non styled TextArea works. It does not give the ellipse on the right margin if text overflow or the cue text, though. If this is the only solution for the moment, it would only seem fair to mention in the LR that TextFields must not be placed under other controls, otherwise use a TextArea.
I never wrote to a canvas or window graphics object outside of pain with Xojo anyway, and can’t even recall doing that in RB. I should not be punished because bad boys do otherwise. How do I turn on window compositing in my program ? I quickly looked in Msdn ; it seems to be mainly for graphics. I found no mention of it for a window. I also tried to turn on GDI+ but the textfield still behaves like a jack in the box. Is there a declare ?
If no declare, where do I find the information in MSDN ?
Thank you Travis.