我想使用 tkinter 模塊切換螢屏。
是否可以無框切換螢屏?
這是我做的代碼。
#frame1.py
from tkinter import *
root=Tk()
root.title('page1')
def goto_p2():
root.destroy()
import frame2
Button(root, text="goto page1", command=goto_p2).pack()
mainloop()
.
#frame2.py
from tkinter import *
root=Tk()
root.title('page1')
def goto_p1():
root.destroy()
import frame1
Button(root, text="goto page2", command=goto_p1).pack()
mainloop()
uj5u.com熱心網友回復:
在這里,示例代碼如何完成。
import tkinter as tk
from tkinter import Button,Label
def clear_frame():
for widget in window.winfo_children():
widget.destroy()
def screen_two():
clear_frame()
button_2 = Button(window, text="Go to screen one", command=lambda: screen_one())
button_2.pack(pady=10)
label_2 = Label(window, text="Label on window two")
label_2.pack(pady=10)
def screen_one():
clear_frame()
button_1 = Button(window, text="Go to screen two", command=lambda: screen_two())
button_1.pack(pady=10)
label_1 = Label(window, text="Label on window one")
label_1.pack(pady=10)
window = tk.Tk()
window.title("Test")
window.geometry('250x100')
screen_one()
window.mainloop()
[編輯]
函式 clear_frame()將銷毀框架中的每個小部件(基本上它會清除螢屏)。此外clear_frame(),還有兩個函式,screen_two()和screen_one()。這兩個函式都在做同樣的事情,呼叫clear_frame()函式,并顯示一個按鈕和一個標簽。(唯一的區別是標簽內的文本和按鈕內的文本)。當代碼運行時,它將window使用geometryof創建250x100。它將呼叫screen_one()function 并運行mainloop()。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/370469.html
上一篇:如何使用matplotlib格式化方程,以便所有字符(子和上標除外)的大小相同?
下一篇:全域前綴未設定變數
