如何在Python中检测Mac视网膜显示器?

1 投票
1 回答
981 浏览
提问于 2025-04-18 18:55

我看到wx python 2.9.5以上的版本支持一个叫做wx.Window.GetContentScaleFactor的功能(可以查看这个链接:http://wxpython.org/Phoenix/docs/html/Window.html#Window.GetContentScaleFactor),在视网膜显示屏上会返回2.0。

我有一个类是从wx.Frame继承而来的,而wx.Frame又是从wx.Window继承的。但是我找不到GetContentScaleFactor这个功能。听说在wxPerl中也有类似的bug(可以查看这个链接:https://rt.cpan.org/Public/Bug/Display.html?id=96136),wxPython中也有类似的问题吗?

有没有什么想法?

补充信息:

>>> wx.version()
'3.0.0.0 osx-cocoa (classic)'
>>> isinstance(wx.Frame(None), wx.Window)
True
>>> 'GetContentScaleFactor' in dir(wx.Frame(None))
False

1 个回答

3

这是关于wxPython Phoenix的内容:版本是3.0.2.dev77483,提到的功能是wx.Window.GetContentScaleFactor。

因为Phoenix在某些方面做了自动处理,所以我猜Robin还没来得及为Classic版本做这个功能。

你可以在http://trac.wxwidgets.org/上提交一个问题,或者发帖到wxPython-dev讨论。

撰写回答