我需要 Tkiner 小部件中字符串的高度(以像素为单位)。它是 Listbox
的一行中的文本。
我知道我可以使用 tkinter.font.Font.measure
测量字符串的宽度。但是我怎样才能得到高度呢?
similar question仅主题化宽度而不是高度。
最佳答案
tkf.Font(font=widget['font']).metrics('linespace')
给出给定小部件字体的高度(以像素为单位):
try: # In order to be able to import tkinter for
import tkinter as tk # either in python 2 or in python 3
import tkinter.font as tkf
except ImportError:
import Tkinter as tk
import tkFont as tkf
if __name__ == '__main__':
root = tk.Tk()
widget = tk.Label(root, text="My String")
widget.pack()
print(tkf.Font(font=widget['font']).metrics('linespace'))
tk.mainloop()
另请注意,单行字符串的高度并不取决于其长度,而仅取决于其在特定环境中的字体。
关于python - 在 Tkinter Python 中测量字符串的高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48726956/