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

Tkinter의 창 크기 조정 제어판


이 기사에서는 높이 또는 너비에 따라 창 크기를 조정할 수 있는 창이 있는 GUI 기반 창 크기 조정 제어판을 만듭니다.

응용 프로그램을 만들기 위해 먼저 창 크기를 조정하는 데 도움이 되는 슬라이더를 만듭니다. 슬라이더는 ttk 라이브러리에서 사용할 수 있습니다. tkinter의. 먼저 "ttk"를 가져올 것입니다. 그런 다음 크기를 조정해야 하는 새 창을 시작합니다.

먼저 노트북에 필요한 모든 라이브러리를 가져와 슬라이더를 사용하여 컨트롤바를 디자인하겠습니다.

예시

# Import the required Libraries
from tkinter import *
from tkinter import ttk

# Create Object
win = Tk()

# Set title
win.title("Window Resizer")
lab= Label(win, text="Window Resizer", font=('Poppins bold', 20))

#Define the geometry for the window or frame
win.geometry("500x500")

# Create a button to launch a new window
launch_button = Button(win,text = "Launch")
launch_button.pack(pady = 10)

# Add Label Frames for width, height and both
width_frame = LabelFrame(win, text = "Width")
width_frame.pack(pady = 10)

height_frame = LabelFrame(win, text = "Height")
height_frame.pack(pady = 10)

both_frame = LabelFrame(win, text = "Both")
both_frame.pack(pady = 10)

#Width Slider
width_slider = ttk.Scale(width_frame,from_ = 100,to = 500,orient = HORIZONTAL,length = 200, value = 100)
width_slider.pack(pady = 10, padx = 20)

#Height Slider
height_slider = ttk.Scale(height_frame, from_ = 100, to = 500, orient = VERTICAL,length = 200, value = 100)
height_slider.pack(pady = 10, padx = 20)

#Both Slider
both_slider = ttk.Scale(both_frame, from_ = 100,to = 500, orient = HORIZONTAL,length = 200, value = 100)
both_slider.pack(pady = 10,padx = 20)

# Keep running the window
win.mainloop()

슬라이더 및 컨트롤에 대한 GUI를 만든 후 슬라이더와 창 컨트롤에서 호출될 다양한 기능을 정의합니다.

먼저 controlmovement가 나타날 새 창을 여는 함수를 만듭니다. 그런 다음 너비, 높이 및 둘 다에 대한 함수를 정의합니다.

함수를 정의하면 다음과 같습니다 -

예시

# Import the required Libraries
from tkinter import *
from tkinter import ttk

# Create Object
win = Tk()

# Set title
win.title("Window Resizer")
lab= Label(win, text="Window Resizer", font=('Poppins bold', 20))

#Define the geometry for the window or frame
win.geometry("500x500")

#Define Functions for all different events
# Open New Window
def launch_win():
   global win1
   win1 = Toplevel()
   win1.geometry("100x100")

# Change width
def change_width(x):
   win1.geometry(f"{int(width_slider.get())}x{int(height_slider.get())}")

#Change height
def change_height(x):
   win1.geometry(f"{int(width_slider.get())}x{int(height_slider.get())}")

#Change both width and height
def change_both(x):
   win1.geometry(f"{int(both_slider.get())}x{int(both_slider.get())}")

# Create a button to launch a new window
launch_button = Button(win,text = "Launch", command= launch_win)
launch_button.pack(pady = 10)

# Add Label Frames for width, height and both
width_frame = LabelFrame(win, text = "Width")
width_frame.pack(pady = 10)

height_frame = LabelFrame(win, text = "Height")
height_frame.pack(pady = 10)

both_frame = LabelFrame(win, text = "Both")
both_frame.pack(pady = 10)

#Width Slider
width_slider = ttk.Scale(width_frame,from_ = 100,to = 500,orient =
HORIZONTAL,length = 200, command= change_height, value=100)
width_slider.pack(pady = 10, padx = 20)

#Height Slider
height_slider = ttk.Scale(height_frame, from_ = 100, to = 500, orient =
VERTICAL,length = 200,command= change_width, value=100)
height_slider.pack(pady = 10, padx = 20)

#Both Slider
both_slider = ttk.Scale(both_frame, from_ = 100,to = 500, orient =
HORIZONTAL,length = 200,command= change_both, value=100)
both_slider.pack(pady = 10,padx = 20)

#Keep Running the window or frame
win.mainloop()

출력

위의 코드를 실행하면 창 크기 조절기가 생성됩니다.

Tkinter의 창 크기 조정 제어판