Ich versuche, eine einfache .bin-Editor erstellen, aber ich kann ein Problem sehr früh. Ich kann nicht herausfinden, wie man den Wert jedes Checkbuttons erhält. Wie Sie sehen, versuche ich, den Code so kompakt wie möglich zu halten, indem ich eine Klasse verwende, um alle Checkbuttons zu erstellen.Python: Get checkbutton Wert
Im Moment versuche ich nur die "saveSave" -Funktion zum Ausdrucken, wenn die Box aktiviert ist oder nicht, damit ich sie später in einer if ... else-Anweisung verwenden kann.
try: #Python 2 imports
from Tkinter import *
import ttk
import tkFileDialog as filedialog
except ImportError: #Python 3 imports
from tkinter import *
from tkinter import ttk
from tkinter import filedialog
def openSave():
file = filedialog.askopenfilename()
def saveSave():
print MaxMP.get()
class CB(Frame):
def __init__(self, parent=None, cheater=""):
Frame.__init__(self, parent)
self.var = BooleanVar()
rawr = Checkbutton(self, text=cheater, variable=self.var, onvalue=1, offvalue=0, bg="white", command=self.saveSave)
rawr.pack()
self.grid(sticky='w', columnspan=2)
pmdxse = Tk()
pmdxse.title("Project Mirai DX Save Editor")
pmdxse.configure(bg="white", padx=10, pady=10)
pmdxse.resizable(width=False, height=False)
Button(pmdxse, text="Open", command=openSave).grid(row=0, column=0)
Button(pmdxse, text="Save", command=saveSave).grid(row=0, column=1)
MaxMP = CB(pmdxse, 'Max MP')
MaxSnacks = CB(pmdxse, 'Max Snacks')
MaxHighscore = CB(pmdxse, 'Max Highscore')
MaxPerfentage = CB(pmdxse, 'Max Percentage')
MaxCombo = CB(pmdxse, 'Max Combo')
UnlockSongs = CB(pmdxse, 'Unlock all Songs')
UnlockHard = CB(pmdxse, 'Unlock Hard/Super Hard Modes')
UnlockItems = CB(pmdxse, 'Unlock all Items in the Shop')
UnlockOutfits = CB(pmdxse, 'Unlock all Outfits')
UnlockStamps = CB(pmdxse, 'Unlock all 115 Stamps')
UnlockProfileOptions = CB(pmdxse, 'Unlock all Profile Options')
MaxRank = CB(pmdxse, 'Set each song to \"Prefect\" rank')
BuyItems = CB(pmdxse, 'Buy all Items')
BuyOutfits = CB(pmdxse, 'Buy all Outfits')
pmdxse.mainloop()
Verwendung ** 'trace' **. Siehe [die Dokumentation] (http://effbot.org/tkinterbook/variable.htm) –
Mögliches Duplikat von [Wie erhalte ich einen Event-Callback, wenn ein Tkinter Entry-Widget geändert wird?] (Https://stackoverflow.com/ questions/6548837/how-do-i-get-ein-event-callback-wenn-ein-tkinter-entry-widget-is-modified) –