CitrixGetWindowPos Function

Action

Returns the position of the specified window.

Include file

CitrixAPI.bdh

Syntax

CitrixGetWindowPos( in  nWindow : number,
                    out nX      : number allownull,
                    out nY      : number optional ): boolean;

Return value

  • true if the function succeeds

  • false otherwise

Parameter Description
nWindow Window handle returned by a call to CitrixWaitForWindowCreation or the SearchWindow functions.
nX Retrieves the X-coordinate of the top-left corner of the specified window. When only the Y-coordinate is of interest, null may be specified.
nY Retrieves the Y-coordinate of the top-left corner of the specified window (optional).

Example:

  transaction TMain
  var
    nWindowHandle  : number;
    i              : number;
    iWindowPosX    : number;
    iWindowPosY    : number;
  begin
    CitrixInit(640, 480);
    CitrixConnect("myserver", "myusername", "mypass", "mydomain", COLOR_16bit);
    CitrixWaitForLogon();
    hWnd6 := CitrixWaitForWindowCreation("ICA Seamless Host Agent", MATCH_Exact, 0x94C800C4, 0, 0, 390, 223);
    CitrixWaitForWindow(hWnd6, EVENT_Activate);
    CitrixWaitForWindowCreation("Program Manager");
    CitrixMouseClick(182, 195, hWnd6, MOUSE_ButtonLeft);
    CitrixWaitForWindow(hWnd6, EVENT_Destroy);
    ThinkTime(2.78);
    CitrixMouseDblClick(38, 22, DESKTOP, MOUSE_ButtonLeft);
    hWnd8 := CitrixWaitForWindowCreation("My Documents", MATCH_Exact, 0x16CF0000, 285, 31, 268, 205);
    CitrixWaitForWindow(hWnd8, EVENT_Activate);
    i := 0;
    nWindowHandle := CitrixGetWindow(i);
    while (nWindowHandle > 0) do
      CitrixGetWindowPos(nWIndowHandle, iWindowPosX, iWindowPosY);
      print("window " + string(nWindowHandle)
                      + "; pos x: " + string(iWindowPosX)
                      + "; pos y: " + string(iWindowPosY));
      i := i + 1;
      nWindowHandle := CitrixGetWindow(i);
    end;
    CitrixMouseClick(258, 13, hWnd8, MOUSE_ButtonLeft);
    CitrixWaitForWindow(hWnd8, EVENT_Destroy);
    CitrixDisconnect();
  end TMain;