Page 1 of 1

MDI Window

Posted: Mon Oct 08, 2007 12:35 am
by Colin Haig
To All

How do I bring an allready open MDI window back into focus - I have
a particular user who wont check to see if he has a window allready open - he just keeps openning new ones.

Thanks for any help

Cheers

Colin

Posted: Mon Oct 08, 2007 3:53 am
by James Bott
Colin,

That is just one of many reasons I avoid using MDI.

Here is how I used to deal with this problem.

Code: Select all

         MENUITEM "&New Order...	Ctrl+N" RESOURCE "new";
            ACTION if( ! wndSetFocus(::oWnd,"Order"), Torder():new():add(),)


// Sets focus to child MDI window with cTitle
static function wndSetFocus(oWnd,cTitle)
   local i:=0,lSuccess:=.f.
   cTitle:=upper(cTitle)
   for i=1 to len(oWnd:oWndClient:aWnd)
      if upper( oWnd:oWndClient:aWnd[i]:cCaption )=cTitle
         oWnd:oWndClient:aWnd[i]:setFocus()
         lSuccess:=.t.
      endif
   next
return lSuccess

Regards,
James

MDI

Posted: Mon Oct 08, 2007 6:50 am
by Colin Haig
Hi James

Thanks for that - works great.

Cheers

Colin