Tkinter Checkbuttons не меняет значение переменнойPython

Программы на Python
Ответить
Anonymous
 Tkinter Checkbuttons не меняет значение переменной

Сообщение Anonymous »

Мои навыки работы с Tkinter улучшаются день ото дня, я не могу поверить, насколько далеко я продвинулся по сравнению с тем, что было 2 недели назад.

Теперь моя проблема в том, что я не могу сделать Кнопки проверки работают. По какой-то причине, которая ускользает от моего понимания, они всегда остаются с одним и тем же значением, независимо от того, отмечены они флажком или нет.

Я пробовал только кнопки проверки в другой сценарий, и они работают отлично. Они также работают в других окнах моего графического интерфейса, но когда я помещаю их в то окно, в котором они должны быть, они просто перестают работать.

Знаете ли вы, почему это происходит? такое может быть?

Спасибо! :D

Я пробовал установить разные значения по умолчанию для кнопки проверки, например 10 для активной и 20 для неактивной, но переменная не меняется, она все еще имеет значение из 0.

from tkinter import *

def runp():

def cb(vari):
print ("variable is {0}".format(vari.get()))

window = Tk()
window.title("Please choose the parameters")
window.geometry('500x350')

labelSelect=Label(window, text="Which Rdata file would you like to load? (from output directory)")
labelSelect.grid(column=0, row=11)

FastaC=BooleanVar()
RwMatrix=BooleanVar()
RwSum=BooleanVar()
RwInfo=BooleanVar()

FastaCRadio=Checkbutton(window, text="FastaClean.Rdata", variable=FastaC, command=lambda: cb(FastaC))
FastaCRadio.grid(column=1, row=11)

RwMatrixRadio=Checkbutton(window, text="RwMatrix.Rdata", variable=RwMatrix, command=lambda: cb(RwInfo))
RwMatrixRadio.grid(column=1, row=12)
RwSumRadio=Checkbutton(window, text="RwSum.Rdata", variable=RwSum, command=lambda: cb(RwSum))
RwSumRadio.grid(column=1, row=13)
RwInfoRadio=Checkbutton(window, text="RwInfo.Rdata", variable=RwInfo,command=lambda:cb(RwInfo))
RwInfoRadio.grid(column=1, row=14)

window.mainloop()

master=Tk()

Button(master, text="RW", command=runp).pack()

master.mainloop()



Подробнее здесь: https://stackoverflow.com/questions/580 ... able-value
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»