Python Forum
[Tkinter] Spawn sub-window with button press
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Tkinter] Spawn sub-window with button press
#2
See if this makes more sense. It also runs without errors.
import sys
if 3 == sys.version_info[0]: ## 3.X is default if dual system
    import tkinter as tk     ## Python 3.x
    from tkinter import ttk
else:
    import Tkinter as tk     ## Python 2.x
    import ttk

class MainWindow():
    def __init__(self, parent):
        self.parent=parent
        self.fr=ttk.Frame(parent)
        self.fr.grid(column=0, row=0, sticky='nsew')
        self.fr.columnconfigure(0, weight=1)
        self.fr.rowconfigure(0, weight=1)
        self.mem_exists = tk.StringVar()
        self.reg_scan = tk.StringVar()
        self.sub_win=None
        self.widgets()
 

    def delete_dmps(self):
        if self.sub_win:
            self.sub_win.destroy()

    def widgets(self):
        self.mem_labl1 = ttk.Label(self.fr, text='Memory Dumps:')
        self.mem_labl1.grid(column=0, row=0)
        self.mem_labl2 = ttk.Label(self.fr, textvariable=self.mem_exists)
        self.mem_labl2.grid(column=0, row=1)
        self.mem_buton = ttk.Button(self.fr, text='Delete', command=self.delete_dmps)
        self.mem_buton.grid(column=0, row=2)
        self.dmp_separ = ttk.Separator(self.fr, orient='horizontal')
        self.dmp_separ.grid(column=0, row=3, rowspan=1, sticky=('EW'))
        self.scn_labl1 = ttk.Label(self.fr, text='Scan for Dumps')
        self.scn_labl1.grid(column=0, row=4)
        self.scn_buton = ttk.Button(self.fr, text='Scan', command=self.scan_pressed)
        self.scn_buton.grid(column=0, row=5)
        self.vrt_separ = ttk.Separator(self.fr, orient='vertical')
        self.vrt_separ.grid(column=1, row=0, rowspan=6, sticky=('NS'))
        self.reg_labl1 = ttk.Label(self.fr, text='Unneeded Keys')
        self.reg_labl1.grid(column=2, row=0)
        self.reg_labl2 = ttk.Label(self.fr, textvariable=self.reg_scan)
        self.reg_labl2.grid(column=2, row=1)
##        self.reg_buton = ttk.Button(self.fr, text='Delete', command=self.delete_keys)
##        self.reg_buton.grid(column=2, row=2)
 
    def scan_pressed(self):
        self.sub_win = tk.Toplevel(self.parent) ##<----- ERROR HERE
##        self.write_dumps()
##        size = self.get_size()
##        self.mem_exists.set(f'{size} KB of memory dumps found!')

root=tk.Tk()
MW=MainWindow(root)
root.mainloop()
Reply


Messages In This Thread
Spawn sub-window with button press - by malonn - Oct-27-2018, 11:04 PM
RE: Spawn sub-window with button press - by woooee - Oct-27-2018, 11:40 PM
RE: Spawn sub-window with button press - by malonn - Oct-28-2018, 12:25 AM
RE: Spawn sub-window with button press - by malonn - Oct-28-2018, 02:56 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  Interaction between Matplotlib window, Python prompt and TKinter window NorbertMoussy 3 756 Mar-17-2024, 09:37 AM
Last Post: deanhystad
  Centering and adding a push button to a grid window, TKinter Edward_ 15 5,506 May-25-2023, 07:37 PM
Last Post: deanhystad
  [Tkinter] Clicking on the button crashes the TK window ODOshmockenberg 1 2,303 Mar-10-2022, 05:18 PM
Last Post: deanhystad
  .get() invoke after a button nested press iddon5 5 3,396 Mar-29-2021, 03:55 AM
Last Post: deanhystad
Question closing a "nested" window with a button in PySimpleGUI and repeating this process Robby_PY 9 13,801 Jan-18-2021, 10:21 PM
Last Post: Serafim
  tkinter touchscreen scrolling - button press makes unwanted scrolling nanok66 1 4,104 Dec-28-2020, 10:00 PM
Last Post: nanok66
  Closing window on button click not working kenwatts275 4 3,902 May-03-2020, 01:59 PM
Last Post: deanhystad
  Anytime I press the button, the result is depicted Jionni 2 2,293 Feb-24-2020, 10:08 AM
Last Post: Jionni
  tkinter window and turtle window error 1885 3 6,853 Nov-02-2019, 12:18 PM
Last Post: 1885
  [PySimpleGui] How to alter mouse click button of a standard submit button? skyerosebud 3 5,098 Jul-21-2019, 06:02 PM
Last Post: FullOfHelp

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020