본문 바로가기

[Python] tkinter 파일 오픈 다이알로그/메뉴/탭 사용하기

by rudals.kim 2021. 1. 12. 댓글 개
반응형

 1. 파일 오픈 다이알로그 

파일열기 버튼을 클릭시 파일선택 다이알로그가 나오며 파일 선택시 선택된 파일명이 라벨에 보여집니다.

from tkinter import *
from tkinter import filedialog
from os import path

window = Tk()
window.title("tkinter 테스트")
window.geometry('320x240')

def open_dialog():
    file = filedialog.askopenfilename(initialdir= path.dirname(__file__))    
    label.configure(text="열린파일 : " + file)

label = Label(window, text="열린파일 : ")
label.grid(column=0, row=0)

button = Button(window, text="파일열기", command=open_dialog)
button.grid(column=0, row=1)

window.mainloop()

 2. 메뉴 

파일메뉴의 New 메뉴 선택시 item 이벤트를 받아서 메세지박스가 보여집니다.

from tkinter import *
from tkinter import Menu
from tkinter import messagebox

def new_menu_click():
    messagebox.showinfo("메뉴 클릭", "New 메뉴 클릭")

window = Tk()
window.title("tkinter 테스트")
window.geometry('320x240')

menu = Menu(window)
new_item = Menu(menu)
new_item.add_command(label='New', command=new_menu_click)
new_item.add_command(label='Edit')
menu.add_cascade(label='File', menu=new_item)
window.config(menu=menu)

window.mainloop()

 

 3. 탭 

각 각의 탭에 라벨을 사용한 예제입니다.

from tkinter import *
from tkinter import ttk

window = Tk()
window.title("tkinter 테스트")
window.geometry('320x240')

tab_control = ttk.Notebook(window)

tab1 = ttk.Frame(tab_control)
tab2 = ttk.Frame(tab_control)

tab_control.add(tab1, text='첫번째 탭')
tab_control.add(tab2, text='두번째 탭')

lbl1 = Label(tab1, text= '첫번째 탭의 라벨')
lbl1.grid(column=0, row=0)
lbl2 = Label(tab2, text= '두번째 탭의 라벨')
lbl2.grid(column=0, row=0)

tab_control.pack(expand=1, fill='both')

window.mainloop()

반응형

댓글