Tkinter 목록 상자

Tkinter Moglog Sangja

Python용 기본 GUI 툴킷은 Tkinter라고 합니다. Python과 Tkinter를 결합하면 GUI 앱을 빠르고 간단하게 개발할 수 있습니다. Tk GUI 툴킷을 위한 효과적인 객체 지향 게이트웨이는 Tkinter에서 제공합니다. Tkinter를 사용하여 Gui 인터페이스를 구축하는 것은 간단합니다. 이 가이드에서는 Tkinter 라이브러리를 사용하여 Tkinter GUI를 만들고 여기에 Listbox 위젯을 추가하는 방법을 보여줍니다.

Ubuntu 20.04 시스템을 시작하기 위해 터미널 셸에서 몇 가지 명령을 사용하여 시스템을 업데이트합니다. Ctrl+Alt+T를 사용하여 터미널 응용 프로그램을 시작하고 적절한 '업데이트' 명령을 추가합니다. 실행하려면 로그인한 사용자의 비밀번호가 필요하며 비밀번호를 추가한 후 전체 시스템을 업데이트합니다.



python3을 성공적으로 설치한 후 코드에서 다른 위젯을 사용하려면 Python tk 유틸리티를 설치해야 합니다. 설치를 위해 터미널 쿼리 영역에서 다음 명령을 시도하십시오.





이 유틸리티의 설치는 완료되기 전에 확인이 필요합니다. 다음 질문을 받은 후 'y'를 누릅니다.

이 유틸리티의 전체 설치 후 터미널 화면에 'tk' 위젯에 대한 다음 대화 상자가 나타납니다. 두 개의 버튼이 있습니다. 하나는 종료용이고 다른 하나는 클릭용입니다.



계속해서 “Click me!”를 클릭하면 버튼을 클릭하면 포함된 텍스트 주위에 대괄호가 표시됩니다. 'Tk'의 대화 화면이 넓어집니다. '종료'를 탭하면
버튼을 누르면 모든 문제와 함께 tk 대화가 닫힙니다.

예 1:

프로그램에서 Tkinter Listbox의 사용을 표시하기 위해 첫 번째 Python 예제를 시작합니다. 이를 위해 새 Python 파일을 만들고 'Tkinter' 라이브러리의 모든 관련 기능을 가져옵니다. GUI 객체 't'는 'Tk()' 함수를 사용하여 코드에서 생성됩니다. 이를 통해 화면에 기본 GUI 창을 만들 수 있습니다. 특정 크기의 화면을 생성하기 위해 Tkinter의 't' 객체를 사용하여 geometry() 함수를 호출합니다.

이제 Tkinter GUI 화면에서 위젯에 레이블을 지정할 텍스트와 함께 텍스트 유형의 위젯 레이블 'l'을 만듭니다. 그런 다음 'Listbox' 함수의 매개변수에 't' 개체를 사용하여 위젯 목록 상자를 만듭니다. Listbox 위젯을 사용하는 insert() 함수는 주문을 생성하기 위해 지정된 번호로 Listbox에 5개의 새 문자열 값을 추가하기 위해 호출됩니다.

레이블 'l'은 그 후에 pack() 함수를 사용하여 패킹됩니다. 목록 상자가 포장되어 있습니다. mainloop() 함수는 사용자가 생성한 이벤트의 기본 루프를 생성하기 위해 Tkinter의 't' 객체를 사용하여 호출됩니다. 이것이 Tkinter 모듈을 통해 Python에서 Listbox를 활용하는 방법입니다. 이제 프로그램이 완료되어 사용할 준비가 되었습니다. 파일에 저장하고 종료합시다.

#!/usr/bin/python3
tkinter 가져오기에서 *
t = Tk ( )
t.기하학 ( '200x250' )
내가 = 레이블 ( t, 텍스트 = '내가 좋아하는 색은...' )
목록 상자 = 목록 상자 ( )
목록 상자.삽입 ( 1 , '하얀색' )
목록 상자.삽입 ( , '검은색' )
목록 상자.삽입 ( , '빨간색' )
목록 상자.삽입 ( 4 , '푸른' )
목록 상자.삽입 ( 5 , '노란색' )
l.팩 ( )
listbox.pack ( )
t.메인루프 ( )

파일을 닫은 후 터미널을 다시 시작하고 'ls' 명령을 통해 기본 디렉토리 내용을 나열합니다. 새로 업데이트된 Python 파일도 있음을 보여줍니다. python3을 사용하여 Python 파일을 실행합니다.

실행 시 다음과 같은 Tkinter GUI 화면이 'tk'라는 제목으로 우리 화면에 열립니다. 회색 영역 내에서 레이블이 지정된 텍스트를 볼 수 있습니다. 흰색 영역에서는 Listbox 항목, 즉 Listbox 개체를 사용하여 Listbox에 추가된 항목을 볼 수 있습니다. 가장 오른쪽에 빨간색으로 표시된 십자 표시를 사용하여 GUI Tkinter 화면을 닫을 수 있습니다.

예 2:

Listbox를 대화형으로 만들기 위해 다른 위젯과 함께 사용하는 방법을 살펴보겠습니다. 일부 라인에서 약간의 변경이 있는 동일한 코드 파일에서 매우 동일한 Python 스크립트가 사용됩니다. 이 코드의 12번째 줄에 새 코드 줄을 추가합니다. 'Delete' 텍스트를 버튼 레이블로 사용하고 Tkinter 객체 't'를 사용하는 'Button' 기능을 사용하여 Tkinter GUI 화면에서 버튼 'b'를 만듭니다.

Button() 함수의 세 번째 매개변수에는 ANCHOR를 사용하는 목록 상자 항목에 대한 삭제 명령, 즉 항목을 선택하고 버튼을 사용하여 삭제하는 명령이 포함됩니다. 레이블, 목록 상자 및 버튼이 패킹됩니다. 이 GUI의 실행을 위해 메인 이벤트 루프가 생성됩니다.

#!/usr/bin/python3
tkinter 가져오기에서 *
t = Tk ( )
t.기하학 ( '200x250' )
내가 = 레이블 ( t, 텍스트 = '내가 좋아하는 색은...' )
목록 상자 = 목록 상자 ( )
목록 상자.삽입 ( 1 , '하얀색' )
목록 상자.삽입 ( , '검은색' )
목록 상자.삽입 ( , '빨간색' )
목록 상자.삽입 ( 4 , '푸른' )
목록 상자.삽입 ( 5 , '노란색' )
b = 버튼 ( t, 텍스트 = '삭제' , 명령 = 람다 리스트 박스 =listbox: listbox.delete ( ) )
l.팩 ( )
listbox.pack ( )
b.팩
t.메인루프 ( )

동일한 파일을 저장한 후 실행합니다.

출력은 '삭제' 버튼과 함께 5개 항목의 목록 상자를 보여줍니다.

'파란색' 목록 상자 항목을 선택하고 '삭제' 버튼을 누릅니다.

선택한 항목이 목록 상자에서 삭제됩니다.

이제 동일한 코드를 업데이트하여 추가 기능을 추가합니다. 따라서 세 번째 줄에서 GUI 창의 크기를 업데이트합니다. 코드의 5번째 줄에서 'showSelected()' 함수에 대한 정의를 추가합니다. 이 함수는 다음 객체를 사용하여 config() 함수를 호출하여 목록 상자 'Lbx'에서 선택한 항목 텍스트를 가져옵니다. 15행에서 ​​버튼은 명령 매개변수에서 showSelected() 함수를 호출합니다.

#!/usr/bin/python3
tkinter 가져오기에서 *
t = Tk ( )
t.기하학 ( '400x300' )
def showSelected ( ) :
show.config ( 텍스트 =Lbx.get ( ) )
내가 = 레이블 ( t, 텍스트 = '내가 좋아하는 색은...' )
Lbx = 목록 상자 ( )
Lbx.pack ( )
Lbx.삽입 ( 1 , '하얀색' )
Lbx.삽입 ( , '검은색' )
Lbx.삽입 ( , '빨간색' )
Lbx.삽입 ( 4 , '푸른' )
Lbx.삽입 ( 5 , '노란색' )
단추 ( t, 텍스트 = '선택 항목 표시', commnd=showSelected).pack()
표시 = 레이블(t)
쇼.팩
t.메인루프()

업데이트된 코드를 실행합니다.

“Show Selected” 버튼이 있는 Listbox의 다음 화면이 생성됩니다.

Listbox 항목 'White'를 선택하고 'Show Selected' 버튼을 누릅니다. 버튼 뒤에 '흰색' 텍스트가 GUI 화면에 표시됩니다.

결론

이것이 파이썬에서 Tkinter 모듈의 사용에 관한 것입니다. Tkinter 라이브러리를 통해 Python 코드에서 Listbox를 사용하는 방법을 확인하기 위해 총 2개의 간단한 Python 예제를 추가했습니다. 우리는 Tkinter GUI, 특히 Listbox 및 관련 버튼 생성을 보다 인터랙티브하게 만들기 위해 다양한 위젯을 사용하는 방법을 보았습니다.