본문 바로가기
데이터베이스

데이터베이스 7. SQL 파이썬 GUI연

by MiaCoder 2024. 6. 10.

1. 화면 띄우기

tkinter GUI모듈을 제공하는 표준 라이브러리

Tk()윈도를 반환 루트윈도우라고도 한다.

이 행이 실행될 때 윈도가 출력된다

root.mainloop() 키보드, 마우스 등 이벤트 처리

 

from tkinter import*

root = Tk() #창을 만들어줌

 

root.title("GUI 연습 화면") #윈도우 창 타이틀

root.geometry("400x200") # 초기 윈도우 크기

label1 = Label(root, text="SQL은") #루트 윈도에 라벨생성

label2 = Label(root, text="엄청쉽습니다", font=("휴먼체", 30),bg="green", fg="yellow")#폰트, 배경색, 글자색 지정

label1.pack()#pack를 해야 화면에 나타난다.

label2.pack()

 

root.mainloop() #이벤트를 처리하는 문장

 

2. 버튼

 

def clickButton():

      messagebox.showinfo('버튼 클릭', '버튼을 눌렀습니다.')

#버튼을 누르면 실행할 함수. 버튼을 누르면 메시지 박스가 등장한다.

 

button1 = Button(root, text="여기를 클릭하세요", fg"navy", bg"silver", command=clickButton)

#버튼을 구성하는 옵션

button1.pack(expand = 1)#화면 중앙에 표시 옵션

 

3. 위젯 정렬

root = Tk()

button1 = Button(root, text="혼공1")

button2 = Button(root, text="혼공2")

button3 = Button(root, text="혼공3")

 

button1.pack(side=LEFT)

button2.pack(side=LEFT)

button3.pack(side=LEFT)

#왼쪽부터 채우며 정렬. RIGHT TOP BOTTOM도 있음

 

3. pack속성 fill, padx pady

button1.pack(side=TOP, fill=X, padx=10, pady =10)

button2.pack(side=TOP, fill=X, padx=10, pady =10)

button3.pack(side=TOP, fill=X, padx=10, pady =10)

fill=X는 수평으로 늘리기 X, Y, BOTH, NONE옵션 있음

padx, pady는 수평, 수직으로 여백 두는 옵션

 

4. 프레임 엔트리 리스트박스

upFrame = Frame(root)

upFrame.pack()

downFrame = Frame(root)

downFrame.pack()

#눈에 보이지 않는 프레임 영역을 나눔

 

editBox = Entry(upFrame, width = 10)

editBox.pack(padx = 20, pady = 20)

#입력창

 

listbox = Listbox(downFrame, bg='yellow')

listbox.pack()

#리스트박스를 나타냄

 

listbox.insert(END, "하나")

listbox.insert(END, "둘")

listbox.insert(END, "셋")

#리스트박스에 값 추가