python - MacOS 上的 Tkinter Python 3 缩放问题
问题描述
我在 Python3/Tkinter 中维护一个应用程序,并添加了我的第一个用户在 MacOS 上打开的问题。这是 Windows 上 1080p 的主屏幕(Linux 显示类似的结果):
在 2560 x 1600 的 MacOS 上,UI 中的所有内容都以 2x 大小近似缩放:
原始代码是那个:
self.window = Tk.Tk()
self.window.resizable(False,False)
if platform.system() == 'Windows' :
self.window.iconbitmap('bestarcade.ico')
self.window.title(title)
我尝试执行决议:
self.scriptDir = scriptDir
self.window = Tk.Tk()
self.window.geometry("930x950")
self.window.resizable(False,False)
更糟糕的是,MacOS 中的应用程序窗口只是缩短了一点
我尝试缩放:
self.scriptDir = scriptDir
self.window = Tk.Tk()
self.window.tk.call('tk','scaling',0.5)
self.window.resizable(False,False)
它并没有改变标准解决方案的任何内容,好像没有考虑到它
现在根据我的阅读,这似乎是 MacOS 上的 Tkinter 错误,我发现的唯一解决方案需要为每个字体和 UI 组件或类似的东西硬设置尺寸
有什么更简单的我可以尝试的吗?
解决方案
我有完全一样的问题!!无论我尝试什么,它总是会有点短。
最后,这就是我所做的。看看它是否适合你。
from tkinter import *
window = Tk()
window.title("Whatever you want")
window.focus()
HEIGHT = window.winfo_screenwidth()
WIDTH = window.winfo_screenheight()
RESOL = str(HEIGHT) + "x" + str(WIDTH+7) + "+" + str(-7) + "+" + str(0)
window.geometry(RESOL)
希望这对你有帮助!
推荐阅读
- php - 如何使用 htaccess 删除 url 中的 index.php
- python - 如何提高我的功能的效率?
- reactjs - 错误:构建 react-static 应用程序模板时出现“模块解析失败:意外令牌”
- database - 表示关系
- php - 自定义 WordPress 主题:未找到商店页面
- django - Django - 使用 Forms 进行嵌套循环和模板渲染
- kubernetes - 为什么 Kubernetes HPA 转换自定义指标?
- python - 将单个 numpy 数组的值添加到其他 numpy 数组中的所有列
- android - 改变recyclerview的footer itemView的view text
- ios - 检测我的控制器是否显示为弹出框