вывод значения функции при нажатии кнопки
Помогите с выводом значения random на экран
вот такой код:
from tkinter import *
from tkinter import messagebox
import random
def otvet():
result = label2.configure(text=otvet, font="Arial 25")
def random():
x = Entry
x = int(x)
otvet = random.randrange(1,x)
return otvet
# окно программы
window = Tk()
window.title("Генератор Чисел")
window.geometry("300x250")
# верхняя строчка
label1 = Label(text="Введите колличество \nучастников", fg="#eee", bg="#333")
label1.pack()
label1.place(x=45, y=30)
# текст посредине
text1 = "Создано \nСпециально \nдля розыгрышей \nи конкурсов."
label2 = Label(text=text1, justify=CENTER, font="Arial 12")
label2.place(x=90, y=90)
# поле для ввода числа
message = StringVar()
message_entry = Entry(width=6, justify=CENTER)
message_entry.place(x=220, y=39)
# нижняя кнопка
message_button = Button(text="Ищем Победителей", command=otvet)
message_button.place(relx=.5, rely=.8, anchor="c")
window.mainloop()
вот что получается:
Ответы (1 шт):
Автор решения: entithat
→ Ссылка
Вы нигде не использовали функцию
random()Чтобы взять значение
Entry, нужно было написать так:message_entry.get()
from tkinter import *
from tkinter import messagebox
from random import randrange
def otvet():
result = label2.configure(text=random(), font="Arial 25") # заменил
def random():
x = int(message_entry.get()) # заменил
return randrange(1, x)
# окно программы
window = Tk()
window.title("Генератор Чисел")
window.geometry("300x250")
# верхняя строчка
label1 = Label(text="Введите колличество \nучастников", fg="#eee", bg="#333")
label1.pack()
label1.place(x=45, y=30)
# текст посредине
text1 = "Создано \nСпециально \nдля розыгрышей \nи конкурсов."
label2 = Label(text=text1, justify=CENTER, font="Arial 12")
label2.place(x=90, y=90)
# поле для ввода числа
message = StringVar()
message_entry = Entry(width=6, justify=CENTER)
message_entry.place(x=220, y=39)
# нижняя кнопка
message_button = Button(text="Ищем Победителей", command=otvet)
message_button.place(relx=.5, rely=.8, anchor="c")
window.mainloop()

