2016-12-24 6 views
0

После получения значения spinbox, я пытаюсь передать его в для диапазона. Цикл жалуется, что значение должно быть строкой или байтом или номером. Когда я вручную помещаю любое число в код (0, 5), код работает. Я хочу заменить со значением спинбокса ..... это можно сделать?Как передать значение spinbox?

+1

Добро пожаловать в StackOverflow! пожалуйста, ознакомьтесь с [как задать вопрос] (https://stackoverflow.com/help/asking) и укажите [минимальный, полный и проверяемый пример] (https://stackoverflow.com/help/mcve) , который воспроизводит вашу проблему. –

ответ

1

Вам нужно будет указать значение, которое вы получаете от .get() до целого числа с int().

Попробуйте это:

from tkinter import * 

class App: 

    def __init__(self, master): 

     frame = Frame(master) 
     frame.pack() 

     self.sb = Spinbox(frame, from_=0, to=10) 
     self.sb.pack(side=LEFT) 

     self.hi_there = Button(frame, text="Go", command=self.run) 
     self.hi_there.pack(side=LEFT) 

    def run(self): 
     for i in range(int(self.sb.get())): 
      print(i) 

root = Tk() 

app = App(root) 

root.mainloop() 
Смежные вопросы