Search code examples
c#.netwindowsz-order

How to get the z-order in windows?


I'm making an application where I interact with each running application. Right now, I need a way of getting the window's z-order. For instance, if Firefox and notepad are running, I need to know which one is in front.

Any ideas? Besides doing this for each application's main window I also need to do it for its child and sister windows (windows belonging to the same process).


Solution

  • You can use the GetTopWindow function to search all child windows of a parent window and return a handle to the child window that is highest in z-order. The GetNextWindow function retrieves a handle to the next or previous window in z-order.

    GetTopWindow: http://msdn.microsoft.com/en-us/library/ms633514(VS.85).aspx
    GetNextWindow: http://msdn.microsoft.com/en-us/library/ms633509(VS.85).aspx