我正在处理作为配置窗口的 UI 类中的一个函数,它显示程序的徽标,并在底部有一个更新文本,告诉你它正在加载什么等。这是我到目前为止所拥有的:
self.window = "config"
self.windowWidth = 340
self.windowHeight = 270
infoText = "Configuring Kh..."
self.root = tk.Tk()
self.root.geometry("%dx%d+400+400" % (self.windowWidth, self.windowHeight))
self.root.title("Kh Control v1.1 starting...")
logo = tk.PhotoImage(file="KhLogo.gif")
mainPanel = tk.Canvas(self.root, width=self.windowWidth, height=self.windowHeight)
mainPanel.image = logo
mainPanel.pack()
mainPanel.create_image(0, 0, image=logo, anchor="nw")
mainPanel.create_text(0,200, text=infoText, anchor="nw", fill="yellow")
return
我希望 infoText 中的文本水平居中并垂直向下偏移约 200 像素。垂直偏移效果很好,但我不知道如何将文本水平居中。
我开始尝试古老的 ((width / 2) - (str length / 2)),但后来意识到每个字母都不是 1px。而且 anchor = "center" 似乎只将一半的文本放在屏幕左侧。
我对 Python 很陌生(现在只有几天),所以如果我遗漏了一些明显的东西,这就是原因。
编辑:如果不是很明显,这个文本会改变,所以我不能只对偏移量做出绝对决定,它必须随着文本而改变