Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Tkinter에서 두 프레임 사이를 전환하는 방법은 무엇입니까?

<시간/>

대부분의 경우 사용자가 프로그램의 다른 세그먼트 간에 전환할 수 있도록 여러 화면이 필요합니다. 이를 달성하는 한 가지 방법은 기본 창 내부에 있는 별도의 프레임을 만드는 것입니다.

A-Frame 위젯은 애플리케이션에서 너무 많은 위젯을 그룹화하는 데 사용됩니다. 두 개의 다른 프레임에 별도의 위젯을 추가할 수 있습니다. 사용자는 버튼을 클릭하여 프레임 간에 전환할 수 있습니다.

예시

이 애플리케이션에서는 두 개의 별도 프레임 인사 프레임을 만듭니다. 및 주문 프레임 . 각 프레임은 두 개의 서로 다른 개체로 구성됩니다. 버튼은 두 개의 다른 프레임 개체 사이를 전환하는 데 사용됩니다.

# Import the required libraries
from tkinter import *
from tkinter import font

# Create an instance of tkinter frame or window
win = Tk()

# Set the size of the window
win.geometry("700x350")

# Create two frames in the window
greet = Frame(win)
order = Frame(win)

# Define a function for switching the frames
def change_to_greet():
   greet.pack(fill='both', expand=1)
   order.pack_forget()

def change_to_order():
   order.pack(fill='both', expand=1)
   greet.pack_forget()

# Create fonts for making difference in the frame
font1 = font.Font(family='Georgia', size='22', weight='bold')
font2 = font.Font(family='Aerial', size='12')

# Add a heading logo in the frames
label1 = Label(greet, text="Hey There! Welcome to TutorialsPoint.", foreground="green3", font=font1)
label1.pack(pady=20)

label2 = Label(order, text="Find all the interesting Tutorials.", foreground="blue", font=font2)
label2.pack(pady=20)

# Add a button to switch between two frames
btn1 = Button(win, text="Switch to Greet", font=font2, command=change_to_order)
btn1.pack(pady=20)

btn2 = Button(win, text="Switch to Order", font=font2, command=change_to_greet)
btn2.pack(pady=20)

win.mainloop()

출력

위의 코드를 실행하면 두 개의 다른 프레임이 포함된 창이 표시됩니다.

Tkinter에서 두 프레임 사이를 전환하는 방법은 무엇입니까?

프레임에 정의된 버튼을 사용하여 프레임을 전환할 수 있습니다.

Tkinter에서 두 프레임 사이를 전환하는 방법은 무엇입니까?


Tkinter에서 두 프레임 사이를 전환하는 방법은 무엇입니까?