我意识到这是一个微不足道的问题,但我仍然感到困惑.
我有一个带有视网膜显示屏的13英寸MacBook Pro.我的系统声称系统报告中的分辨率为2560×1600.我假设tkinter中的Canvas命令测量高度和宽度(以像素为单位),而tk文档似乎也表明了这一点.然而下面的代码,我使用1200作为宽度,700作为tkinter画布的高度,产生一个主要填充我的屏幕的画布.
画布的高度和宽度是多少单位?
from tkinter import * master = Tk() x = 1200 y = 700 w = Canvas(master, width=x, height=y) w.pack() mainloop()
Ciprian Tomo.. 5
你是对的,TkInter确实以像素为单位测量大小.但:
Retina Display具有更高的硬件像素密度,使显示更清晰.但请注意,这些与程序使用的渲染像素不一一对应.来自维基百科:
当Apple产品具有Retina显示器时,每个用户界面小部件的宽度和高度都加倍,以补偿较小的像素.Apple将此模式称为HiDPI模式
任何包含高像素密度(DPI)的显示器也是如此.因此,如果您希望窗口小部件处于屏幕宽度/高度的某个百分比,则应首先检测您是否在HiDPI显示器上并相应地缩放窗口小部件.这个问题可能有所帮助
你是对的,TkInter确实以像素为单位测量大小.但:
Retina Display具有更高的硬件像素密度,使显示更清晰.但请注意,这些与程序使用的渲染像素不一一对应.来自维基百科:
当Apple产品具有Retina显示器时,每个用户界面小部件的宽度和高度都加倍,以补偿较小的像素.Apple将此模式称为HiDPI模式
任何包含高像素密度(DPI)的显示器也是如此.因此,如果您希望窗口小部件处于屏幕宽度/高度的某个百分比,则应首先检测您是否在HiDPI显示器上并相应地缩放窗口小部件.这个问题可能有所帮助