2016-11-20 2 views
0

Итак, я пытаюсь сделать ярлык, который отображает как STRINGVAR и IntVar, хотя, когда я пытаюсь поставить их, как так ...Как сделать отображение IntVar и StringVar в том же виджете?

from tkinter import * 
from tkinter import ttk 

root = Tk() 
parent = ttk.Frame(root) 
parent.grid() 

string = StringVar() 
integer = IntVar() 

string.set("Blah =") 
integer.set(10) 

both = str((string.get(), str(integer.get()))) 
print(both) 

both = StringVar() 
both.set((string.get(), str(integer.get()))) 
print(both.get()) 

label = ttk.Label(parent, textvariable=(both)) 
label.grid() 

root.mainloop() 

Теперь, это ближе я смог , потому что другие способы даже не отображали текстовые переменные в виджетах. По какой-то причине код при печати возвращается: ('Blah =', '10').
Как и список, который был напечатан. Но на этикетке отображается: {Blah =} 10

Может кто-нибудь скажет мне, почему он отображает их вместо того, чтобы просто отображать переменные.

ответ

0

Я думаю, вы ищете, как форматировать строку.

both = StringVar() 
both.set("{}{}".format(string.get(), integer.get())) 
+0

Итак, @ cricket_007, в фигурных скобках в основном говорят, что есть 2 переменные, поместите здесь переменную здесь и переменную два здесь. Затем устанавливает его так, чтобы переменные отображались в формате, который вы создали, с фигурными скобками? –

+0

Yup. Больше информации здесь. https://pyformat.info/ –

+0

Спасибо большое, отлично работал. –

Смежные вопросы