I think you'll need to use getwindowrect somewhere in your code.
This example is independent of Lothar's Gui, I just threw it together to use the getwindowrect function.
Code: Select all
#Include "windows.bi"
Dim As MSG msg
Dim As HWND Main_Win,ClickWin
Main_Win=CreateWindowEx(0,"#32770","Move or re-size window and Click",WS_OVERLAPPEDWINDOW Or WS_VISIBLE,200,200,600,300,0,0,0,0)
ClickWin=CreateWindowEx(0,"Button","Click", WS_VISIBLE Or WS_CHILD,0,0,60,30,Main_win,0,0,0)
var z1=CreateWindowEx( 0,"STATIC","", ws_border Or WS_VISIBLE Or WS_CHILD ,150,50,100,20, Main_win,0,0,0)
var z2=CreateWindowEx( 0,"STATIC","", ws_border Or WS_VISIBLE Or WS_CHILD ,150,100,100,20, Main_win,0,0,0)
var z3=CreateWindowEx( 0,"STATIC","", ws_border Or WS_VISIBLE Or WS_CHILD ,150,150,100,20, Main_win,0,0,0)
var z4=CreateWindowEx( 0,"STATIC","", ws_border Or WS_VISIBLE Or WS_CHILD ,150,200,100,20, Main_win,0,0,0)
var w1=createwindowex(0,"STATIC","Left edge =" , WS_VISIBLE Or WS_CHILD,50,50,100,20, Main_win,0,0,0)
var w2=createwindowex(0,"STATIC","Top edge = " , WS_VISIBLE Or WS_CHILD,50,100,100,20, Main_win,0,0,0)
var w3=createwindowex(0,"STATIC"," Width =" , WS_VISIBLE Or WS_CHILD,50,150,100,20, Main_win,0,0,0)
var w4=createwindowex(0,"STATIC"," Height =" , WS_VISIBLE Or WS_CHILD,50,200,100,20, Main_win,0,0,0)
freeconsole 'dont show the console box
While GetMessage( @msg,Main_Win,0,0)
TranslateMessage(@msg)
DispatchMessage(@msg)
Select Case msg.hwnd
Case Main_Win
Select Case msg.message
Case 273 'close by clicking X
End
End Select
'-----------------------------
Case ClickWin
Select Case msg.message
Case WM_LBUTTONDOWN
dim as rect r
getwindowrect(Main_win,@r)'<---- HERE
var g=string(5," ")
setWindowText(z1,g+str(r.left))
setWindowText(z2,g+str(r.top))
setWindowText(z3,g+str(r.right-r.left))
setWindowText(z4,g+str(r.bottom-r.top))
End Select
'------------------------------
End Select'(case main_win)
Wend