2009-08-12 59 views
4

我已经创建了一个在系统托盘中运行的应用程序。当用户单击try图标时,屏幕右下角会出现一个小表格,即系统托盘正上方。该表格基本上“粘”到托盘上。如何找到Windows任务栏的位置和大小?

这是我的问题:即使用户将任务栏停靠在别处,我该如何完成同样的任务?就像在屏幕的顶部,或者其中一边?

它不应该很难,因为我想我所要做的就是找出其中任务栏是。它位于底部,顶部还是其中一侧。但是我无法在任何地方找到任何文档,这解释了如何获取任务栏的位置和位置。

任何人有任何想法吗?

回答

1

这是一个窗口,所以找到它的HWND,然后获得窗口坐标。您正在查找的类名是“TrayNotifyWnd”。

+0

请问你能否在这方面多说一些? – 2009-08-12 10:51:12

+1

这是错误的,原因有几个:1.它是Shell_TrayWnd,而不是TrayNotifyWnd,即系统托盘,它是任务栏的子项,2. GetWindowPlacement实际上并不正确,您需要调用Shell32 .dll并获取实际的任务栏位置。请参阅此处链接的答案:http://stackoverflow.com/questions/1264406/to-get-windows-status-bar-position-and-size – 2011-04-27 19:33:03