如何通过Python的tkinter同时在不同的页面中执行不同的功能?

时间:2016-07-07 03:01:02

标签: python tkinter

代码:

from tkinter import ttk
import tkinter as tk
from tkinter import *
import time

def Main():
    root = tk.Tk()
    root.title("test")
    root.geometry('300x200')

    nb = ttk.Notebook(root)

    page1 = ttk.Frame(nb)
    layout1(page1)
    page2 = ttk.Frame(nb)
    layout2(page2)
    page3 = ttk.Frame(nb)
    layout3(page3)

    nb.add(page1, text='page1')
    nb.add(page2, text='page2')
    nb.add(page3, text='page3')

    nb.pack(fill=BOTH, expand=1)
    root.mainloop()

def layout1(page):
    Button(page, text = 'fun1', command = fun1).place(x=150,y=100)
def fun1():
    for i in range(100):
        print('fun1')
        time.sleep(3)

def layout2(page):
    Button(page, text = 'fun2', command = fun2).place(x=150,y=100)
def fun2():
    for i in range(100):
        print('fun2')
        time.sleep(3)

def layout3(page):
    Button(page, text = 'fun3', command = fun3).place(x=150,y=100)
def fun3():
    for i in range(100):
        print('fun3')
        time.sleep(3)

if __name__ == "__main__":
    Main()

输出将是这样的:

enter image description here

我想要做的是当我点击page1中的按钮并开始运行该功能时,我还想转到第2页和第3页来运行其中的功能。

但是,如果我在第1页运行该功能,我将无法转到第2页或第3页。程序一直停留,直到fun1完成它的过程。

那我该怎么办?

0 个答案:

没有答案