RE: Using WS_BORDER in Windows XP
- Posted by Brian Broker <bkb at cnw.com> Oct 08, 2004
- 459 views
Wolf wrote: > > > > I didn't go that far yet, as I no longer have a non-XP system to > > > test it on. But its a consideration for later on. I don't know why > > > original author(s) put WS_BORDER on these controls. > > > > It seems that WS_EX_CLIENTEDGE overrides WS_BORDER, at least on Win2K. > > Most controls now seem to have this--maybe an archeologist out there > > with some old Win32Lib can tell us what they used to have around the > > v0.50 days (which was when I added the common controls). > > > > It's probably safe to take WS_BORDER off as long as WX_EX_CLIENTEDGE > > applies. > > WS_BORDER existed for most controls simply because Win32lib started out > without *any* _EX_ styles at all, and > WS_EX_CLIENTEDGE was simply 'overlaid' when it was first added. > Also should be remembered that Win32lib was originally running under a > subsystem 3.0.10 exw.exe, which probably > influenced a lot of it's 'mucking-about' with various style flags. > I think Wolf has hit the nail on the head on this. The subsystem issue forced a few unnecessary 'tweaks' to make apps look right on post Win3.x systems. Also, there doesn't seem to be any ill-effects from removing the WS_BORDER because I only see the border with XP themes enabled. With themes disabled (or using the 'classic' theme) there doesn't appear to be a visual difference whether WS_BORDER is there or not. (but I could be wrong on this because I didn't do extensive testing) -- Brian