如何解决在 Tkinter 中根据用户的屏幕大小调整文本大小
我希望我的 Tkinter 应用程序的文本大小相对于用户的屏幕大小,以及其他所有已经改变的东西,比如按钮和图像,因为我已经使用 .place() 命令制作了它们相对值。目前,我有一个糟糕的解决方案,即只容纳 768p 和 1080p 用户,如果用户的屏幕更大,它会保持在 1080p。为此,我创建了一个“RATIO”变量,该变量取决于用户的屏幕尺寸和操作系统,并使用我从测试中得出的非精确值。
if sys.platform == "win32":
win,mac = True,False
RATIO = 1
elif sys.platform == "darwin":
from appscript import app,mactypes
win,mac = False,True
RATIO = 1.375
SCREEN_WIDTH,SCREEN_HEIGHT = root.winfo_screenwidth(),root.winfo_screenheight()
if SCREEN_HEIGHT != 1024:
RATIO *= 1.4
def create_window(self,master,extra="",title=("",0)):
current_window = tk.Toplevel(master)
current_window.geometry(f"{SCREEN_WIDTH}x{SCREEN_HEIGHT}+0+0")
current_window.title(f"Background Revolution{extra}")
self.canvas = tk.Canvas(
current_window,width=SCREEN_WIDTH,height=SCREEN_HEIGHT,bg="#66AFF5"
)
self.title_label = tk.Label(
self.title_frame,text=f"{title[0]}",font=("Courier",int(title[1] * RATIO)),)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。