2017-04-24 10 views
0

私はOOPとtkinterをグリップする方法をPython 3で試してきました。使用中にサブウインドウをポップアップしたいのですが、データ、出力しかし、どのようなウィンドウが作成されているかに応じて、私はWindowsクラスでタイトルを割り当てる方法を理解できません。これまで私が行ってきたことの簡単な例を見てください。Tkinterのウィンドウクラスを修正する(Python 3)

from tkinter import * 

from tkinter import messagebox 


class Window(Frame): 

    def __init__(self, master = None): 

     Frame.__init__(self, master) 

     self.master = master 

     self.init_window() 

    def init_window(self): 

     self.master.title("ProgramName") 

     self.pack(fill = BOTH, expand = 1) 

     menu = Menu(self.master) 
     self.master.config(menu=menu) 

     prog_help = Menu(menu) 
     prog_help.add_command(label='Help', command=self.help_popup) 
     prog_help.add_command(label='About', command=self.version_popup) 
     menu.add_cascade(label='Help', menu=prog_help) 

    #Method 1: Using message.box 
    def version_popup(self): 
     messagebox.showinfo("About program", "Version 0.1") 
     return 

    #Method 2: Using another window 
    def help_popup(self): 
     helpwindow() 
     return 

def helpwindow(): 
    hwindow = Toplevel() 
    hwindow.geometry("100x100") 

root = Tk() 
root.geometry("400x300") 

app = Window(root) 

root.mainloop() 

は私がself.master.title(x)の中の変数を変更helpwindowの定義()で何かをやるべきだと思うが、私は何を把握することはできません。

お時間をありがとうございました。

+0

titleメソッドを呼び出すことです。 – Novel

答えて

0

あなたの場合、ヘルプウィンドウは何かのサブクラスではありません。あなたがする必要があるすべてはあなたがグローバル変数として「ルート」を持っているので、単に「root.title」を変更、Toplevel

def helpwindow(): 
    hwindow = Toplevel() 
    hwindow.title("I am the help window") 
    ... 
関連する問題