본문 바로가기
프로그래밍 독학/python

[python] 파이썬 GUI tkinter 스크롤바 만들기 상호평가 프로그램 만들기(8)

by 파레토맨 2022. 4. 8.

▶스크롤바 만들기

 

내용이 길어질 졌을 때 편의성을 위해서 스크롤바를 만들기로 했습니다.

scrollbar = Scrollbar()

Scrollbar()를 써주어서 생성하고

scrollbar.pack(side="right", fill="y")

위의 코드를 통하여 배치해보았습니다.

side="right"를 통하여 오른쪽에 배치하였고 fill = "y"는 아마 y축의 길이만큼
스크롤바의 길이를 채우는 것 같습니다. (정확히 모르겠습니다.;;)

txt = Text(
    wd,
    width=55,
    height=30,
    font=('바탕체', 10),
    yscrollcommand=scrollbar.set
)

그리고 위에 만들어 뒀던 Text의 마지막에 yscrollcommand=scrollbar.set 코드를
적어 스크롤바가 Text 위젯에 적용되게 하였습니다.

scrollbar.config(command=txt.yview) 

그리고 위의 코드로 스크롤 가능한 위젯과 연결시켜줍니다.

수평 스크롤바일 경우에 스크롤바를 선언할 때 orient = "horizontal"를 써주고
위의 코드들에서 y대신에 x를 써주면 될 것 같습니다.

이 부분이 개인적으로 어려웠습니다.

config를 사용하지 않고 스크롤바를 선언할 때 위젯과 연결시켜주어도 된다고 하는데
그러면 굳이 yscrollcommand=scrollbar.set 이 코드를 쓸 필요가 없는 거 아닌가라고 생각했었는데
아마 스크롤바를 먼저 만들고 Text를 만들 경우에 이렇게 할 수 있는 것 같습니다.

창의 오른쪽에 스크롤바가 생긴 모습


스크롤바 자체는 연결하고자 하는 위젯(2개의 Text 중 왼쪽)과 연결되었지만

그 위치는 전체 창의 오른쪽에 생성되었습니다.

 


복습의 목적으로 포스팅하고 있습니다. 비전공자 초보라 내용이 미흡한 면이 있습니다.

이번 포스팅은 어려워서 특히 더 미흡했던 것 같습니다.

좀 더 공부해서 같은 생초보분들에 도움이 될 수 있는 포스팅을 할 수 있었으면 합니다.

 

댓글