0

さて、編集ボタンと表示ボタンのある基本的なウィンドウができました。私のコードでは、EDIT と VIEW の両方が「このボタンは役に立たない」というメッセージを返します。これらを「main_window」クラスの下に作成しました。EDITボタンがクリックされたときに呼び出すことを望んでいる別のクラス「edit_window」を作成しました。基本的に、編集ボタンをクリックすると、[追加] ボタンと [削除] ボタンを含む新しいウィンドウが表示されます。これまでのコードは次のとおりです...次の論理的なステップは何ですか?

from Tkinter import *
#import the Tkinter module and it's methods
#create a class for our program

class main_window:
    def __init__(self, master):
        frame = Frame(master)
        frame.pack(padx=15,pady=100)

        self.edit = Button(frame, text="EDIT", command=self.edit)
        self.edit.pack(side=LEFT, padx=10, pady=10)

        self.view = Button(frame, text="VIEW", command=self.view)
        self.view.pack(side=RIGHT, padx=10, pady=10)

    def edit(self):
        print "this button is useless"

    def view(self):
        print "this button is useless"

class edit_window:
    def __init__(self, master):
        frame = Frame(master)
        frame.pack(padx=15, pady=100)

        self.add = Button(frame, text="ADD", command=self.add)
        self.add.pack()

        self.remove = Button(frame, text="REMOVE", command=self.remove)
        self.remove.pack()

    def add(self):
        print "this button is useless"

    def remove(self):
        print "this button is useless"


top = Tk()
top.geometry("500x500")
top.title('The Movie Machine')
#Code that defines the widgets

main = main_window(top)


#Then enter the main loop
top.mainloop()
4

1 に答える 1

0

Toplevelを使用する代わりに を作成するだけFrameです:

class MainWindow:
    #...
    def edit(self):
        EditWindow()

class EditWindow(Toplevel):
    def __init__(self):
        Toplevel.__init__(self)
        self.add = Button(self, text="ADD", command=self.add)
        self.remove = Button(self, text="REMOVE", command=self.remove)
        self.add.pack()
        self.remove.pack()

CapWords 規則に従ってクラス名を変更しました ( PEP 8を参照)。これは必須ではありませんが、スタイルを統一するためにすべての Python プロジェクトで使用することをお勧めします。

于 2013-03-06T00:00:30.250 に答える