views:

93

answers:

3

I'm writing an app in Python that automatically moves stuff around. How do I get the position of the windows start menu bar, so I can account for it in my calculations?

A: 

To get the rectangle use SHAppBarMessage(). You would do the following in C++:

APPBARDATA abd = {0};
SHAppBarMessage(ABM_GETTASKBARPOS, &abd);

And then abd.rc would contain the rectangle. You just have to do the pywin32 equivilent.

Please note that GetMonitorInfo() will give you the working area, which is desktop - appbars, but the Task Bar is not the only appbar that might exist.

jeffamaphone
+1  A: 

When you ask for the work area, the taskbar area is automatically excluded.

System.Parameters.WorkArea

or Use interop to

SystemParametersInfo(SPI_GETWORKAREA, ...)`  

and you are done.

John Knoeller