Dialog start position

Started by Fred Tomke, July 29, 2025, 02:16:06 AM

Previous topic - Next topic

Fred Tomke

Hello,

when I close the form, the latest position is stored in the registry to make sure to reshow it on the latest position before closing.

(vl-registry-read (strcat "HKEY_CURRENT_USER\\" (vlax-product-key) "\\Profiles\\" (getvar "CPROFILE") "\\OpenDCL\\Dialogs\\<projectname/formname>") "TopLeftX")
It works fine on a workstation with a never changing screen configuration with 0,0 at the leftmost screen.

In former times - when I was young and unexperienced - I tried to make sure that the form will appear on a place within the visible monitor area. I couldn't image that form positions could be negative values.

In the meantime a customer told me that she cannot see the (modeless) dialog although it is open. A research for the reason ended up with the result in exactly the position-overriding in my former code: start the form at x=30 and y=30 when the last form position is obviously outside the visible monitor area. But infact x=30 and y=30 is outside for this customer. Less than 0 for x and more than 1980 for x is actually visible.

Is the any chance to retreive minx miny maxx maxy for each accessible screen and not only screensize?

I hope I was understandable.
With regards, Fred
Fred Tomke
Dipl.-Ing. (FH) Landespflege

[ landscaper - landscape developer - digital landscape and urban design]