Форум сайта python.su
Хелп, проблема с checkbutton, когда я принтую var_az.get() всё время выводится 0, я не понимаю с чем это связано
#coding: utf-8 from tkinter import * from tkinter.simpledialog import * from tkinter.messagebox import * import tkinter.ttk as ttk import os import pickle import random global pin del_for = False pin = "" accounts={} new_pass = False def main_window(): global del_for global accounts global root if del_for == True: root.destroy() root = Tk() root.geometry("430x300") root.title("Менеджер паролей") menu_bar = Menu(root) menu_bar.add_command(label="Генерировать", command=gener) root.config(menu = menu_bar) root.mainloop() def gener(): global var_az global az global var_spec global var_numbs global gen_pass global size generation = Tk() generation.title("Генерация паролей") var_az = IntVar() var_numbs = IntVar() var_spec = IntVar() az1 = Checkbutton(generation, text="A-Z",variable=var_az,onvalue=1,offvalue=0) numbs = Checkbutton(generation, text="0-9",variable=var_numbs,onvalue=1,offvalue=0) spec = Checkbutton(generation, text="Спец.символы",variable=var_spec,onvalue=1,offvalue=0) list1 = [i for i in range(5,20)] size = ttk.Combobox(generation,values = list1, width=3) size.set(10) generat = Button(generation, text="Сгенерировать", command = lambda: generation_func()) gen_pass = Entry(generation) az1.grid(row=0,column=0) numbs.grid(row=0,column=1) spec.grid(row=0,column=2) size.grid(row=1,column=0) generat.grid(row=1,column=2) gen_pass.grid(row=2,columnspan=2) generation.mainloop() def generation_func(): global var_az global var_spec global var_numbs global gen_pass global size print(var_az.get()) root = Tk() root.title("Менеджер паролей") root.geometry("430x300") root.after(100, main_window()) root.mainloop()
Отредактировано Fedy1661 (Дек. 10, 2017 13:01:42)
Офлайн
ап
Офлайн
Fedy1661
Нука не спамь!
Офлайн
Подниму
Офлайн
проблема в том что вы используете Tk() для создание второго окна, используйте Toplevel() и будет вам счастье.
[code python][/code]
Офлайн