>>To be very fair, I really don't believe this (ie ZOrder(), send to front/back, etc) is a big issue for a great DATABASE language as VFP. I don't see the big winning from having a property for it, nor from enhancing this in anyway.
Does anyone have an app that makes intensive use of ZOrder() method?
<<
I use Zorder to compensate for a bug with pageframes:I had to prevent any page object from directly getting focus. To get around the bug I must add a line object to each page of the page frame and stretch the line to the dimensions of the page. This may seem like something that can be done in the Init() of the pageframe, but I needed a solution that will work even in the situation where pages are dynamically added, and without having to remember to call a special method. In the refresh() of the pageframe I look for pages that don't have a the line (I call it a "page barrier") and do the following:
FOR EACH loPage IN this.Pages()
IF TYPE("loPage.oPageBarrier")!="O"
loPage.AddObject("oPageBarrier","cPageBarrierLine")
WITH loPage.oPageBarrier
.Height = loPage.PageHeight
.Width = loPage.PageWidth
.ZOrder(1)
ENDWITH
ENDIF
ENDFOR
Since the refresh() of the pageframe might not fire until after the controls have been put on the page, this makes sure that the barrier is the bottom most