Код, управляющий внутренним состоянием члена класса (например, кнопки), обычно принадлежит внутри класса.
Действия нажатия кнопки должны быть определены как часть вашего класса.
(Как и во всем, иногда бывают исключения, но сейчас следуйте вышеописанному).
Для получения дополнительной информации см. En.wikipedia.org/wiki/Encapsulation_(computer_programming).
Все, что вам нужно сделать в вашем примере, это переместить функцию нажатия кнопки в вашем классе и затем связать ее с вашей кнопкой (так же, как вы связали выход с кнопкой 3).
import tkinter as tk
from tkinter import font
class Application(tk.Frame):
def __init__(self, master=None):
tk.Frame.__init__(self, master)
self.grid()
self.theWidgets()
def theWidgets(self):
self.one = tk.Button(self, text='New Game', command=self.onePressed)
self.one.grid(row=0,column=0,padx=100)
self.two = tk.Button(self, text='Load Game')
self.two.grid(row=1,column=0,padx=100,pady=10)
self.three = tk.Button(self, text='Quit', command=self.quit, anchor=tk.W, font='Helvetica 18 bold')
self.three.grid(row=2, column=0, padx=100, pady=10)
def onePressed(self):
self.one.config(state="disabled")
app = Application()
app.mainloop()