我正在編寫一個程序來運行各種服務器的批處理文件,到目前爲止一切都很順利。我的意思是這些程序運行並使用簡單的GUI,一切都很好。除了當我給它一個稍長的名字以顯示在列表框中時,它將剪輯結束。 Tkinter使用的代碼如下。如何適應Tkinter列表框到內容
master = tk.Tk()
listbox = tk.Listbox(master, selectmode=tk.SINGLE)
keys = serverDict.keys()
for key in sorted(keys):
listbox.insert(tk.END, key)
button = tk.Button(master, text="Execute", command=execute)
listbox.pack()
button.pack()
tk.mainloop()
所以基本上所有的工作完全正常,我沒有得到任何錯誤,但它是一個有點討厭它無法正確合適的方式,我不能滾動。我知道我可以添加滾動條並使窗口重新變大,並使列表框符合給定的空間,但我希望它能夠在不必調整大小的情況下工作。我知道這不是那麼重要,但它只是我喜歡工作但不知道的事情之一:/。
您是否嘗試根據具有最大字符數的列表項來縮放寬度(以像素爲單位)? (這可能不起作用,因爲字符!=像素數量,但它可能讓你想到一個更好的解決方案。) – gary
那麼我怎麼才能算出字符串中的像素數?如果我沒有弄錯,是否有與字體有關的度量函數呢?然後'如果tk.measure(string)> largestString:largestString = tk.measure(string)'或者類似的東西。 – frasertmay