I'm on KDE-Plasma 5.18.5 Kubuntu using Python3. The checkbox cannot be checked.
#!/usr/bin/env python3
import tkinter as tk
import os
class Menu(tk.Frame):
def __init__(self, parent, program, *args, **kwargs):
tk.Frame.__init__(self, parent, *args, **kwargs)
self.parent = parent
self.VERSION = tk.StringVar()#on
self.HOST = tk.IntVar()
self.VERSION.set("Select Version")
VERSION = ("1.8.x", "1.9.x")
tk.OptionMenu(self, self.VERSION, *VERSION).place(x=200, y=125, width=185, height=100)
tk.Checkbutton(self, text="Online server?", variable=self.HOST).place(x=200, y=400)
tk.Button(self, text="Proceed", command=lambda: program.proceed(self.HOST, self.VERSION)).place(x=200, y=600)
class UIController:
def __init__(self):
self.program = Program()
self.root = tk.Tk()
self.ui_menu = tk.Toplevel(self.root)
self.root.withdraw()
def menu(self):
self.ui_menu.title("mcsm")
self.ui_menu.geometry("600x700")
Menu(self.ui_menu, self.program).pack(side="top", fill="both", expand=True)
self.ui_menu.mainloop()
class Program: # To print out values from Menu.
def __init__(self):
pass
def proceed(self, host, version):
print(str(host.get()) + ' ' + version.get())
if __name__ == "__main__":
UIController().menu()
e.g. This: