SpQueryWindowPos: Difference between revisions
Appearance
Created page with "This function queries the window size and position of a visible window. '''Syntax:''' pos = spQueryWindowPos ( [ hwnd , ] key ) '''Parameters:''' hwnd – Window handle. If ..." |
No edit summary |
||
Line 34: | Line 34: | ||
options ||Options. | options ||Options. | ||
|- | |- | ||
} | |} | ||
Table 6 Position Value IDs for spQueryWindowPos | Table 6 Position Value IDs for spQueryWindowPos | ||
Revision as of 03:46, 6 April 2015
This function queries the window size and position of a visible window.
Syntax: pos = spQueryWindowPos ( [ hwnd , ] key )
Parameters: hwnd – Window handle. If ommited the default desktop handle (HWND_DESKTOP) will be used.
key – Selects the position value to be queried.
Key | Description |
---|---|
cy
height || Window height. | |
cx
width|| Window width. | |
y
left|| Y coordinate of the window's origin. | |
x
bottom|| X coordinate of the window's origin |
Table 6 Position Value IDs for spQueryWindowPos
Returns: Window position value.
Example Code:
/* scclock.cmd (spUtils Example Code) */ /* Switches the Smartcenter (aka WarpCenter or eComCenter) clock by */ /* simulating a button click on the clock */ CALL RXFUNCADD 'spLoadFuncs','spUtils','spLoadFuncs' CALL spLoadFuncs CALL spSetAutoSleep 0 focus=spQueryFocus() PARSE VALUE spQueryPointerPos() WITH xptrpos yptrpos hwnd=spFindWindowHandle(,,,'SmartCenter',,'\PMSHELL.EXE') IF hwnd=0 THEN DO SAY 'Smartcenter (WarpCenter or eComCenter) not found' RETURN END xoffset=spQueryWindowPos(hwnd,'x') yoffset=spQueryWindowPos(hwnd,'y') xpos=spQueryWindowPos(hwnd,'cx')-5 ypos=5 CALL spSetPointerPos xoffset+xpos,yoffset+ypos CALL spPostMsg hwnd,'WM_BUTTON1DOWN',spMPFROM2SHORT(xpos,ypos) CALL spPostMsg hwnd,'WM_BUTTON1UP',spMPFROM2SHORT(xpos,ypos) CALL spPostMsg focus,'WM_BUTTON1DOWN',spMPFROM2SHORT(0,0) CALL spPostMsg focus,'WM_BUTTON1UP',spMPFROM2SHORT(0,0) CALL spSetPointerPos xptrpos,yptrpos