Francisco,
I just made a form and in the Init for the form I put;
THIS.Width = SysMetric(1) && screen width
Thenfomr had a property sheet width of 300 and my screen is 1024X768. I ran the form and it was as wide as the display. I think there may a problem in your function causing to return the same width that form already has. What's the code in the function you are calling?