Here is something I been playing around with.
#! /usr/bin/env python3.8 '''Docstring''' import tkinter as tk from functools import partial class CheckBoxes: '''Docstring''' def __init__(self, master): self.master = master self.master.columnconfigure(0, weight=1) self.mainframe = tk.Frame(self.master) self.mainframe.grid(column=0, row=0, sticky='news') self.mainframe.grid_columnconfigure(0, weight=3) self.chkbox_frame = tk.Frame(self.mainframe, border=5, relief='ridge') self.chkbox_frame.grid(column=0, row=0, sticky='new') self.textframe = tk.Frame(self.mainframe, border=5, relief='ridge', height=73) self.textframe.grid(column=0, row=1, sticky='new') self.btnframe = tk.Frame(self.mainframe, border=5, relief='ridge') self.btnframe.grid(column=0, row=2, sticky='new') self.myvars = [] self.chkboxes() self.btnbox() def chkboxes(self): self.boxes = ['Checkbox 1', 'Checkbox 2', 'Checkbox 3'] i = 0 for self.box in self.boxes: myvar = tk.StringVar() self.chkbox = tk.Checkbutton(self.chkbox_frame, text=self.box, variable=myvar, onvalue='Checked', offvalue='Un-Checked') self.chkbox.deselect() self.chkbox.grid(column=0, row=i) i += 1 self.myvars.append(myvar) def print_frame(self, myvars): self.textframe.destroy() self.textframe = tk.Frame(self.mainframe, border=5, relief='ridge', height=73) self.textframe.grid(column=0, row=1, sticky='new') i = 0 for myvar in myvars: label = tk.Label(self.textframe, text=f'{self.boxes[i]} -> {myvar.get()}') label.grid(column=0, row=i, sticky='w') i += 1 def btnbox(self): self.button = tk.Button(self.btnframe, text='Click Me', \ command=partial(self.print_frame, self.myvars)) self.button.grid(column=0, row=0) self.myvars='' self.clear_btn = tk.Button(self.btnframe, text='Clear', \ command=partial(self.print_frame, self.myvars)) self.clear_btn.grid(column=1, row=0, padx=20) def main(): root = tk.Tk() root.title('Checkboxes') root.geometry('400x200+50+50') CheckBoxes(root) root.mainloop() if __name__ == '__main__': main()
I welcome all feedback.
The only dumb question, is one that doesn't get asked.
My Github
How to post code using bbtags
The only dumb question, is one that doesn't get asked.
My Github
How to post code using bbtags