2013-11-26 45 views
2

我想在main.py的文件菜單中按'about'鏈接時打開about.py。我再次爲問孩子問題而道歉。提前致謝。在Tkinter上調用下一個腳本

想這是main.py:

from Tkinter import * 
import tkFileDialog 
import about 

class Example(Frame): 

    def __init__(self, parent): 
     Frame.__init__(self, parent) 

     self.parent = parent   
     self.initUI() 

    def initUI(self): 

     self.parent.title("File dialog") 
     self.pack(fill=BOTH, expand=1) 

     menubar = Menu(self.parent) 
     self.parent.config(menu=menubar) 

     fileMenu = Menu(menubar) 

     fileMenu.add_command(label="About", command=self.onAbout) 
     menubar.add_cascade(label="File", menu=fileMenu)   

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



    def onAbout(self): 
     pass #how can I call about.py here..? 



def main(): 

    root = Tk() 
    ex = Example(root) 
    root.geometry("300x250+300+300") 
    root.mainloop() 


if __name__ == '__main__': 
    main() 

而且about.py看一些這樣的事:

from Tkinter import * 

class About(Frame): 

    def __init__(self, parent): 
     Frame.__init__(self, parent) 

     self.parent = parent   
     self.initUI() 

    def initUI(self): 

     pass 


def main(): 

    root = Tk() 
    ex = About(root) 
    root.geometry("630x400+200+200") 
    root.mainloop() 


if __name__ == '__main__': 
    main() 

回答

0

這是你如何做到這一點:

def onAbout(self): 
    new_root = Tk() 
    new_root.geometry("630x400+200+200") 
    About(root) 
+0

我不不想創建新窗口..我想調用現有文件.. – Tirthajust4u

+0

你不能那樣做。你總是創建一個新的對話框或窗口。並且以某種方式調用新文件,因爲您導入了它。 – Oz123

+0

好吧,我得到你。謝謝..!! – Tirthajust4u

相關問題