resolution = screen.geometry.split('+')[0] AttributeError: 'Win32Window' object has no attribute 'geometry'
时间: 2024-10-31 16:06:49 浏览: 17
geometry:Boost.Geometry-通用几何库| 自Boost 1.75起需要C ++ 14
看起来你正在尝试从`Win32Window`对象上获取几何形状(`geometry`),但在`pygetwindow`库中,这个属性可能是不存在的,因为该库主要用于获取窗口的位置、大小等信息,而不是屏幕的分辨率。
如果你的目标是获取系统的屏幕分辨率,`pygetwindow`可能不是最佳选择。你可以考虑使用操作系统级别的库,比如`psutil`(针对Linux和macOS)或`win32api`(针对Windows),它们能够提供更底层的系统信息。
例如,在Windows下,你可以使用`win32api`库的`GetSystemMetrics`函数来获取屏幕分辨率:
```python
import win32api
def get_screen_res():
width = win32api.GetSystemMetrics(0) # SM_CXSCREEN
height = win32api.GetSystemMetrics(1) # SM_CYSCREEN
return (width, height)
# 调用函数并打印分辨率
res = get_screen_res()
print("Screen Resolution:", res)
```
如果使用`psutil`库,可以在Linux和macOS上获取类似的信息:
```python
import psutil
def get_screen_res():
display_info = psutil.display_info()
return display_info.current_resolution
# 调用函数并打印分辨率
res = get_screen_res()
print("Screen Resolution:", res)
```
关于你遇到的`AttributeError`,记得检查库的具体文档以确认哪些属性或函数是可用的,或者尝试使用上述替代方法。
阅读全文