Welcome to the SRP Forum! Please refer to the SRP Forum FAQ post if you have any questions regarding how the forum works.
MDIClient resizing issie
OI 10.2.2 beta2 rel 20623 (Beta 1 rel 20605 is OK)
Can anyone confirm that they are also having this in in Beta2:
Open form then close it and the MDIClint window resize to top of ribbon.

then close

Can anyone confirm that they are also having this in in Beta2:
Open form then close it and the MDIClint window resize to top of ribbon.

then close

Comments
Not using the MDISize property.
Can you give me a hint as to what the command line should look like.
CtrlId = @Window:".MDICLIENT" Handle = Get_Property(CtrlId, "HANDLE") Send_Message(@Window:".OLE_SUBCLASS", "OLE.Subclass", Handle, CtrlId)
Should this go before or after the MDISize?
That worked, I did not have to use the MDISize.
There, that should do it.
We've stumbled over a consequence of subclassing the mdiclient. After subclassing, we cannot modify the backcolor property of the mdiclient.
It's not something we do regularly but it is something we do in some very specific circumstances. If the client is subclassed, then setting the backcolor property doesn't do anything.
Set the backcolor property first, then subclass the client retains the backcolor, until that is, you set the visibility of the form and then the subclassed mdiclient reverts back to default colours.
I have found a work around that seems to work for us and that is to subclass the mdiclient after both of those things have occurred.
So, set the backcolor property of the mdiclient.
Make the mdiform visible.
Subclass the mdiclient.
Subclassing in and of itself isn't the problem but (I'm guessing based on this thread), resizing the form/client area after subclassing resets the backcolor property and prevents it from being modified.
The working sequence seems to uphold the solution to the problem this thread was started for so I think we're all good now but figured it was worth mentioning
Like to my second monitor.
Like I do every single time.
Obviously, the move resizes the window and that in turn resets the mdiclient colour to default settings.
Is there a way we can prevent a subclassed mdiclient from resetting its colours at least?
After you subclass the MDI client, set the Subclass Control's MDI Background property like so:
Set_Property(@Window:".OLE_SUBCLASS", "OLE.MdiBackground[":@Window:";MDICLIENT]", MyBackColor)
The background can be any Color Fill value.