我正在使用2.8英寸PiTFT在python pi 3上使用python3和tkinter制作闹钟收音机。我正在使用一种称为数字7的真型字体。当我创建一个tkinter标签来保留时间时,则仅显示文本的前3 / 4s。如果添加“ \ n”,则显示全文。我已经做了很多搜索,但是还没有找到解决方案。任何帮助将不胜感激。
以下是代码段:
import datetime
import tkinter as tk
root = tk.Tk()
root.configure(background='black')
# make root use full screen
root.overrideredirect(True)
root.geometry("{0}x{1}+0+0".format(root.winfo_screenwidth(), root.winfo_screenheight()))
# using 2.8 PiTFT with 320x240 display
timeText = tk.StringVar()
# digital-7 is a true type font, which shows clock in 7 segment display
timeLabel = tk.Label(root, font=('digital-7', 120), fg='red', bg='black', textvariable=timeText, anchor='n')
timeLabel.grid(row=0, columnspan=6)
def updateDate():
global timeText
dt = datetime.datetime.now()
# without the '\n' the bottom part of the time gets cropped
tts = dt.strftime('%H:%M')
timeText.set(tts+'\n')
root.after(2000, updateDate)
updateDate()
root.mainloop()
完整的代码在这里(仍在进行中):
https://raw.githubusercontent.com/dumbo25/tkinter-alarm-clock-radio-gui/master/acr.py
digital-7进入/home/pi/.fonts,这是我从那里获得Digital 7的地方:
https://github.com/dec/angular-canvas-gauge/blob/master/Sample/fonts/digital-7-mono.ttf