728x90
반응형
리스트 박스를 생성하는 기본 함수는 listbox()이다.
listbox = Listbox(root) # root라는 창에 리스트 박스 생성
listbox.config(selectmode="extended") # 리스트 박스 selectmode설정 "extended" = 여러개 선택 가능
listbox.config(height=0)] # 리스트 박스 높이 설정
listbox.pack() # 리스트 박스 배치
위 코드를 실행시키면 리스트 박스를 생성시킬 수 있다.
이제 리스트 박스에 내용을 추가시켜보자.
listbox.insert(1, "파이썬") # 첫번째 자리에 "파이썬"을 추가
listbox.insert(2, "C") # 두번째 자리에 "C"을 추가
listbox.insert(END, "java") # 끝자리에 "java"을 추가
이렇게 간단하게 리스트 박스에 내용을 추가할 수 있다.
마지막으로 리스트 박스 중 선택된 값을 불러오는 함수는 아래와 같다.
a = listbox.curselection() # 현제 선택된 리스트 박스의 값을 변수 a에 저장
이렇게 간단히 선택된 값을 사용할 수도 있다.
리스트 박스의 사용법을 알아봤으니
이를 활용한 간단한 프로그램을 만들어보자.
from tkinter import * # tkinter 라이브러리에 모든 함수를 사용하겠다.
root = Tk() # root라는 창을 생성
root.geometry("600x400") # 창 크기설정
root.title("yeachan_yeachan") # 창 제목설정
root.option_add("*Font","맑은고딕 25") # 폰트설정
root.resizable(False, False) # x, y 창 크기 변경 불가
def btnpress(): # 함수 btnpress() 정의
lb.insert(END, ent.get()) # 입력창의 내용을 리스트 박스 마지막에 추가
def btnpress1(): # 함수 btnpress1() 정의
lb.delete(lb.curselection()) # 리스트 박스 중 선택된 값 삭제
lb = Listbox(root) # root라는 창에 리스트 박스 생성
lb.config(selectmode="single") # 리스트 박스 selectmode 설정
lb.config(height = 0) # 리스트 박스 높이 설정
lb.pack() # 리스트 박스 배치
ent = Entry(root) # root라는 창에 입력창 생성
ent.pack() # 입력창 배치
btn = Button(root) # root라는 창에 버튼 생성
btn.config(text= "추가") # 버튼 내용
btn.config(width=10) # 버튼 크기
btn.config(command=btnpress) # 버튼 기능 (btnpree() 함수 호출)
btn.pack() # 버튼 배치
btn1 = Button(root) # root라는 창에 버튼 생성
btn1.config(text= "삭제") # 버튼 내용
btn1.config(width=10) # 버튼 크기
btn1.config(command=btnpress1) # 버튼 기능 (btnpree1() 함수 호출)
btn1.pack() # 버튼 배치
root.mainloop() # 창 실행
이렇게 프로그램을 짜면
아래와 같이 추가버튼을 누르면 입력창에 입력한 값이 리스트 박스에 추가가 되고
삭제 버튼을 누르면 선택된 리스트 박스의 값이 삭제가 되는 간단한 프로그램이 완성된다.
리스트 박스의 간단한 사용법을 알아봤다.
다음 글에서는 체크박스를 만드는 법을 알아보겠다.
728x90
반응형
'Python > [파이썬] GUI 프로그래밍' 카테고리의 다른 글
[파이썬] GUI 프로그래밍 #8 라디오 버튼 만들기 (0) | 2021.08.22 |
---|---|
[파이썬] GUI 프로그래밍 #7 체크 박스 만들기 (0) | 2021.08.20 |
[파이썬] GUI 프로그래밍 #5 레이블 만들기 (0) | 2021.08.19 |
[파이썬] GUI 프로그래밍 #4 입력창 만들기 (0) | 2021.08.19 |