我在 pygtk 中编写了应用程序,它显示了一个弹出窗口(如来自 Chrome),没有调整大小和移动选项。除了一件事,一切都很好。我必须将此窗口移动到屏幕底部,略高于任务栏。MS windows 上的任务栏在 windows XP 30px 上具有,但在 windows 7 上更高我通过代码获得监视器/屏幕分辨率:
w = self.get_screen()
print w.get_height()
但我仍然没有任务栏的高度。任何想法如何获得这个高度?
在 Windows 上,你可以使用这个:
from ctypes import windll, wintypes, byref
SPI_GETWORKAREA = 48
SM_CYSCREEN = 1
def get_taskbar_size():
SystemParametersInfo = windll.user32.SystemParametersInfoA
work_area = wintypes.RECT()
if (SystemParametersInfo(SPI_GETWORKAREA, 0, byref(work_area), 0)):
GetSystemMetrics = windll.user32.GetSystemMetrics
return GetSystemMetrics(SM_CYSCREEN) - work_area.bottom
print get_taskbar_size() # 30
请注意,如果 API 调用失败,get_taskbar_size
它将返回。None