tkinter — Tcl/Tk 파이썬 인터페이스¶
소스 코드: Lib/tkinter/__init__.py
tkinter 패키지(“Tk 인터페이스”)는 Tcl/Tk GUI 툴킷에 대한 표준 파이썬 인터페이스입니다. Tk와 tkinter 는 macOS를 포함한 대부분의 유닉스 플랫폼과 윈도우 시스템에서 모두 사용할 수 있습니다.
명령 줄에서 python -m tkinter 를 실행하면 간단한 Tk 인터페이스를 보여주는 창이 열립니다. 이를 통해 시스템에 tkinter 가 올바르게 설치되었는지 확인할 수 있으며, 설치된 Tcl/Tk 버전을 확인하여 해당 버전에 맞는 Tcl/Tk 문서를 읽을 수 있습니다.
Tkinter는 스레드 지원 여부와 관계없이 다양한 Tcl/Tk 버전을 지원합니다. 최소 지원 버전은 Tcl/Tk 8.5.12이며, 공식 파이썬 바이너리 릴리스에는 Tcl/Tk 9.0이 포함되어 있습니다. 지원되는 버전에 대한 자세한 정보는 _tkinter 모듈의 소스 코드를 참조하십시오.
버전 3.11에서 변경: 8.5.12보다 오래된 Tcl/Tk 버전에 대한 지원이 제거되었습니다.
Tkinter는 단순한 래퍼가 아니며, 사용 환경을 더 파이썬답게 만들기 위해 상당량의 자체 로직을 추가합니다. 이 문서는 이러한 추가 사항과 변경 사항에 집중하며, 변동 없는 세부 사항은 공식 Tcl/Tk 문서를 참조하십시오.
참고
Tcl/Tk 8.5(2007)는 현대적인 테마 기반 사용자 인터페이스 컴포넌트 세트와 이를 사용하기 위한 새로운 API를 도입했습니다. 구형 및 신형 API를 모두 사용할 수 있습니다. 온라인에서 찾을 수 있는 대부분의 문서는 여전히 구형 API를 사용하고 있어 매우 오래되었을 수 있습니다.
This is an optional module. If it is missing from your copy of CPython, look for documentation from your distributor (that is, whoever provided Python to you). If you are the distributor, see 선택적 모듈의 요구 사항.
더 보기
- TkDocs
Tkinter를 사용하여 사용자 인터페이스를 생성하는에 관한 상세한 튜토리얼입니다. 핵심 개념을 설명하고 현대적인 API를 사용한 권장 접근 방식을 설명합니다.
- Tkinter 8.5 reference: a GUI for Python
Tkinter 8.5에서 사용 가능한 클래스, 메서드 및 옵션을 상세히 기술한 참조 문서입니다.
Tcl/Tk 리소스:
- Tk commands
Tkinter에서 사용되는 기본 Tcl/Tk 명령에 대한 포괄적인 참조입니다.
- Tcl/Tk 홈 페이지
추가 문서 및 Tcl/Tk 핵심 개발 관련 링크입니다.
도서:
- Modern Tkinter for Busy Python Developers
Mark Roseman 지음. (ISBN 978-1999149567)
- Python GUI programming with Tkinter
Alan D. Moore 지음. (ISBN 978-1788835886)
- Programming Python
Mark Lutz 지음; 탁월하게 Tkinter를 다루고 있습니다. (ISBN 978-0596158101)
- Tcl and the Tk Toolkit (2nd edition)
Tcl/Tk의 창시자인 John Ousterhout와 Ken Jones 저술; Tkinter는 다루지 않습니다. (ISBN 978-0321336330)
아키텍처¶
Tcl/Tk는 단일 라이브러리가 아니라 각각 별도의 기능과 공식 문서를 가진 몇 개의 독립된 모듈로 구성됩니다. 파이썬 바이너리 릴리스에는 추가 모듈이 함께 포함되어 제공됩니다.
- Tcl
Tcl은 파이썬과 마찬가지로 동적 인터프리터 프로그래밍 언어입니다. 범용 프로그래밍 언어로 단독으로도 사용할 수 있지만, 가장 일반적으로는 C 애플리케이션에 스크립팅 엔진이나 Tk 툴킷의 인터페이스로 내장됩니다. Tcl 라이브러리는 하나 이상의 Tcl 인터프리터 인스턴스를 생성 및 관리하고, 해당 인스턴스에서 Tcl 명령과 스크립트를 실행하며, Tcl 또는 C로 구현된 사용자 정의 명령을 추가하기 위한 C 인터페이스를 제공합니다. 각 인터프리터는 이벤트 큐를 가지며, 이벤트를 전송하고 처리하는 기능을 갖추고 있습니다. 파이썬과 달리 Tcl의 실행 모델은 협력적 멀티태스킹(cooperative multitasking)을 중심으로 설계되었으며, Tkinter가 이 차이를 연결합니다(자세한 내용은 Threading model 참조).
- Tk
Tk는 C로 구현된 Tcl 패키지 로, GUI 위젯을 생성하고 조작하기 위한 사용자 정의 명령을 추가합니다. 각
Tk객체는 Tk가 로드된 자체 Tcl 인터프리터 인스턴스를 포함합니다. Tk의 위젯은 매우 커스터마이징이 가능하지만 디자인이 다소 구식이라는 단점이 있습니다. Tk는 GUI 이벤트를 생성하고 처리하기 위해 Tcl의 이벤트 큐를 사용합니다.- Ttk
Themed Tk(Ttk)는 기존의 많은 Tk 위젯보다 다양한 플랫폼에서 훨씬 나은 외관을 제공하는 새로운 방식의 Tk 위젯군입니다. Ttk는 Tk 버전 8.5부터 Tk의 일부로 배포됩니다. 파이썬 바인딩은 별도의 모듈인
tkinter.ttk에서 제공됩니다.
내부적으로 Tk와 Ttk는 기반 운영체제의 기능을 사용합니다. 즉, Unix/X11에서는 Xlib을, macOS에서는 Cocoa를, Windows에서는 GDI를 사용합니다.
파이썬 애플리케이션에서 위젯을 생성하기 위해 Tkinter의 클래스를 사용할 때, tkinter 모듈은 먼저 Tcl/Tk 명령 문자열을 구성합니다. 이 문자열을 내부 _tkinter 바이너리 모듈로 전달하면, 해당 모듈이 Tcl 인터프리터를 호출하여 이를 평가합니다. 그 후 Tcl 인터프리터가 Tk 및/또는 Ttk 패키지를 호출하며, 결과적으로 Xlib, Cocoa 또는 GDI를 호출하게 됩니다.
Tkinter 모듈¶
Tkinter 지원은 여러 모듈에 걸쳐 있습니다. 대부분의 애플리케이션은 주요 tkinter 모듈과 현대적인 테마 위젯 세트 및 API를 제공하는 tkinter.ttk 모듈을 필요로 합니다.
from tkinter import *
from tkinter import ttk
Tk 지원을 제공하는 모듈은 다음과 같습니다:
tkinter주 Tkinter 모듈.
tkinter.colorchooser사용자가 색상을 선택할 수 있게 하는 대화 상자.
tkinter.commondialog여기에 나열된 다른 모듈에 정의된 대화 상자의 베이스 기본 클래스.
tkinter.filedialog사용자가 열거나 저장할 파일을 지정할 수 있도록 하는 일반 대화 상자입니다.
tkinter.font글꼴과 관련된 작업에 도움이 되는 유틸리티.
tkinter.messagebox표준 Tk 대화 상자에 액세스합니다.
tkinter.scrolledtext세로 스크롤 막대가 내장된 Text 위젯.
tkinter.simpledialog기본 대화 상자와 편리 함수.
tkinter.ttkTk 8.5에서 도입된 테마 위젯 세트로, 기본
tkinter모듈의 많은 고전적 위젯들에 대한 현대적인 대안을 제공합니다.
추가 모듈:
_tkinterTcl/Tk에 대한 저수준 인터페이스를 포함하는 바이너리 모듈입니다. 이 모듈은 기본
tkinter모듈에 의해 자동으로 임포트되며, 애플리케이션 프로그래머가 직접 사용해서는 안 됩니다. 일반적으로 공유 라이브러리(또는 DLL)이지만, 때에 따라 파이썬 인터프리터에 정적으로 링크될 수도 있습니다.idlelib파이썬의 통합 개발 및 학습 환경(IDLE)입니다.
tkinter를 기반으로 합니다.tkinter.constantsTkinter 호출에 다양한 매개 변수를 전달할 때 문자열 대신 사용할 수 있는 기호 상수입니다. 기본
tkinter모듈에 의해 자동으로 임포트됩니다.tkinter.dnd(실험적)
tkinter에 대한 드래그 앤 드롭 지원입니다. 이 기능은 Tk DND로 대체될 때 폐지될 예정입니다.turtleTk 창에서의 터틀(turtle) 그래픽.
Tkinter 구명조끼¶
이 섹션은 Tk나 Tkinter에 관한 상세한 튜토리얼을 제공하도록 설계되지 않았습니다. 그런 목적이라면 앞서 언급된 외부 리소스를 참조하십시오. 대신, 이 섹션에서는 Tkinter 애플리케이션의 전반적인 모습을 빠르게 파악하고, 핵심적인 Tk 개념을 확인하며, Tkinter 래퍼가 어떻게 구성되어 있는지 설명합니다.
이 섹션의 나머지 부분은 Tkinter 애플리케이션에서 필요한 클래스, 메서드, 옵션을 파악하는 데 도움을 주며, 공식 Tcl/Tk 참조 매뉴얼을 포함하여 관련 상세 문서를 어디에서 찾을 수 있는지 알려줍니다.
Hello World 프로그램¶
Tkinter의 “Hello World” 애플리케이션을 살펴보는 것부터 시작하겠습니다. 이 프로그램이 가장 작은 규모는 아니지만, 알아야 할 몇 가지 핵심 개념을 설명하기에는 충분한 내용을 담고 있습니다.
from tkinter import *
from tkinter import ttk
root = Tk()
frm = ttk.Frame(root, padding=10)
frm.grid()
ttk.Label(frm, text="Hello World!").grid(column=0, row=0)
ttk.Button(frm, text="Quit", command=root.destroy).grid(column=1, row=0)
root.mainloop()
임포트 문 다음 줄은 Tk 클래스의 인스턴스를 생성하며, 이는 Tk를 초기화하고 관련 Tcl 인터프리터를 생성합니다. 또한 애플리케이션의 기본 창 역할을 하는 루트 윈도우라고 불리는 최상위(toplevel) 창을 생성합니다.
다음 줄은 프레임 위젯을 생성하며, 이 경우 다음 단계에서 만들 레이블과 버튼이 포함됩니다. 프레임은 루트 윈도우 안에 배치됩니다.
다음 줄은 고정된 텍스트 문자열을 담고 있는 레이블 위젯을 생성합니다. grid() 메서드는 HTML 테이블이 작동하는 방식과 유사하게 포함된 프레임 위젯 내에서 레이블의 상대적인 배치(위치)를 지정하는 데 사용됩니다.
그런 다음 버튼 위젯이 생성되어 레이블의 오른쪽에 배치됩니다. 버튼을 누르면 루트 윈도우의 destroy() 메서드가 호출됩니다.
마지막으로, mainloop() 메서드는 모든 요소를 화면에 표시하고 프로그램이 종료될 때까지 사용자 입력에 반응합니다.
중요한 Tk 개념¶
이 간단한 프로그램조차 다음과 같은 핵심 Tk 개념을 보여줍니다.
- 위젯
Tkinter 사용자 인터페이스는 개별적인 위젯(widget) 으로 구성됩니다. 각 위젯은
ttk.Frame,ttk.Label,ttk.Button과 같은 클래스에서 인스턴스화된 파이썬 객체로 표현됩니다.- 위젯 계층 구조
위젯은 계층 구조*로 배치됩니다. 레이블과 버튼은 프레임 내에 포함되었고, 이 프레임은 다시 루트 윈도우 내에 포함되었습니다. 각 *자식(child) 위젯을 생성할 때, 그 상위의 부모(parent) 위젯이 위젯 생성자의 첫 번째 인자로 전달됩니다.
- 구성 옵션
위젯은 레이블이나 버튼에 표시할 텍스트와 같이 외관과 동작을 변경하는 구성 옵션 을 가집니다. 위젯의 클래스에 따라 제공되는 옵션 세트가 다릅니다.
- 기하학 관리
위젯은 생성될 때 사용자 인터페이스에 자동으로 추가되지 않습니다.
grid와 같은 지오메트리 관리자(geometry manager) 가 위젯이 사용자 인터페이스의 어느 위치에 배치될지를 제어합니다.- 이벤트 루프
Tkinter는 이벤트 루프 를 활발하게 실행하고 있을 때만 사용자 입력이나 프로그램의 변경 사항에 반응하며 화면을 갱신합니다. 프로그램이 이벤트 루프를 실행하지 않으면 사용자 인터페이스가 업데이트되지 않습니다.
Tkinter가 Tcl/Tk를 래핑하는 방식 이해하기¶
애플리케이션에서 Tkinter의 클래스와 메서드를 사용할 때, 내부적으로 Tkinter는 Tcl/Tk 명령을 나타내는 문자열을 조합하고 이를 애플리케이션의 Tk 인스턴스에 연결된 Tcl 인터프리터에서 실행합니다.
참조 문서를 탐색하거나, 적절한 메서드나 옵션을 찾거나, 기존 코드를 수정하거나, Tkinter 애플리케이션을 디버깅할 때 등, 기초가 되는 Tcl/Tk 명령이 실제로 어떻게 생겼는지 파악하는 것이 유용할 때가 있습니다.
설명을 위해, 위 Tkinter 스크립트의 주요 부분에 해당하는 Tcl/Tk 대응 코드를 다음과 같이 제시합니다.
ttk::frame .frm -padding 10
grid .frm
grid [ttk::label .frm.lbl -text "Hello World!"] -column 0 -row 0
grid [ttk::button .frm.btn -text "Quit" -command "destroy ."] -column 1 -row 0
Tcl의 구문은 많은 셸 언어와 유사하며, 첫 번째 단어가 실행할 명령이고 그 뒤에 공백으로 구분된 인자들이 따릅니다. 자세한 내용은 생략하고 다음 사항을 주의 깊게 살펴보십시오.
위젯을 생성하는 데 사용되는 명령(예:
ttk::frame)은 Tkinter의 위젯 클래스에 대응됩니다.Tcl 위젯 옵션(예:
-text)은 Tkinter의 키워드 인수에 대응됩니다.Tcl에서는 위젯을 경로명(pathname) (예:
.frm.btn)으로 참조하는 반면, Tkinter는 이름을 사용하지 않고 객체 참조를 사용합니다.위젯 계층 내의 위치는 (계층적) 경로명에 인코딩되며, 이때 경로 구분자로
.(마침표)를 사용합니다. 루트 창의 경로명은 단지.(마침표)입니다. Tkinter에서는 경로명이 아니라 각 자식 위젯을 생성할 때 부모 위젯을 지정함으로써 계층을 정의합니다.Tcl에서 별도의 명령 으로 구현된 작업(예:
grid또는destroy)은 Tkinter 위젯 객체에서 메서드 로 표현됩니다. 곧 확인하게 되겠지만, 다른 경우에는 Tcl도 위젯 객체에 대한 메서드 호출처럼 보이는 방식을 사용하며 이는 Tkinter에서 사용하는 방식과 더 유사합니다.
어떻게 …를 하나요? …은 어떤 옵션을 제공하나요?¶
Tkinter에서 특정 작업을 수행하는 방법을 확실히 모르겠고 사용 중인 튜토리얼이나 참조 문서에서도 바로 찾을 수 없는 경우 도움이 될 만한 몇 가지 전략이 있습니다.
먼저, 개별 위젯이 작동하는 방식의 세부 사항은 Tkinter와 Tcl/Tk의 버전에 따라 다를 수 있음을 기억하십시오. 문서를 검색할 때는 시스템에 설치된 Python 및 Tcl/Tk 버전과 일치하는지 확인해야 합니다.
API 사용법을 검색할 때 사용하는 클래스, 옵션 또는 메서드의 정확한 이름을 알면 도움이 됩니다. 대화형 파이썬 셸이나 print() 를 이용한 내성(Introspection)을 통해 필요한 정보를 식별할 수 있습니다.
임의의 위젯에서 사용 가능한 구성 옵션을 확인하려면 해당 위젯의 configure() 메서드를 호출하십시오. 이 메서드는 기본값과 현재 값을 포함하여 각 객체에 대한 다양한 정보가 담긴 딕셔너리를 반환합니다. 옵션의 이름만 가져오려면 keys() 를 사용하십시오.
btn = ttk.Button(frm, ...)
print(btn.configure().keys())
대부분의 위젯은 공통적인 구성 옵션을 많이 가지고 있으므로, 특정 위젯 클래스에만 특화된 옵션이 무엇인지 파악하는 것이 유용할 수 있습니다. 이를 위해 더 간단한 위젯인 프레임(frame)과 옵션 목록을 비교하는 방법이 있습니다.
print(set(btn.configure().keys()) - set(frm.configure().keys()))
마찬가지로, 표준 dir() 함수를 사용하여 위젯 객체가 제공하는 사용 가능한 메서드를 확인할 수 있습니다. 실행해 보면 200개 이상의 공통 위젯 메서드가 있음을 알 수 있으므로, 특정 위젯 클래스에 해당하는 것들을 식별하는 것이 도움이 됩니다.
print(dir(btn))
print(set(dir(btn)) - set(dir(frm)))
스레딩 모델¶
Python과 Tcl/Tk는 매우 다른 스레딩 모델을 가지고 있으며, tkinter 는 이 둘 사이를 연결하려고 시도합니다. 스레드를 사용하는 경우 이 점을 유의해야 할 수 있습니다.
하나의 Python 인터프리터에 여러 개의 스레드가 연결될 수 있습니다. Tcl에서도 여러 스레드를 생성할 수 있지만, 각 스레드는 서로 다른 Tl 인터프리터 인스턴스와 연결됩니다. 스레드는 하나 이상의 인터프리터 인스턴스를 생성할 수도 있지만, 각 인터프리터 인스턴스는 그것을 생성한 단 하나의 스레드에 의해서만 사용될 수 있습니다.
tkinter 에 의해 생성된 각 Tk 객체는 Tcl 인터프리터를 포함하며, 어떤 스레드가 해당 인터프리터를 생성했는지 추적합니다. tkinter 호출은 모든 파이썬 스레드에서 수행될 수 있습니다. 내부적으로 Tk 객체를 생성한 스레드가 아닌 다른 스레드에서 호출이 들어오면, 인터프리터의 이벤트 큐에 이벤트가 게시되고 실행 시 결과가 호출한 파이썬 스레드로 반환됩니다.
Tcl/Tk 애플리케이션은 통상적으로 이벤트 기반이며, 이는 초기화 후 인터프리터가 이벤트 루프(즉, Tk.mainloop)를 실행하고 이벤트에 반응함을 의미합니다. 싱글 스레드로 작동하기 때문에 이벤트 핸들러는 신속하게 응답해야 하며, 그렇지 않으면 다른 이벤트의 처리를 방해하게 됩니다. 이를 방지하기 위해 시간이 오래 걸리는 계산은 이벤트 핸들러에서 실행해서는 안 되며, 타이머를 사용하여 더 작은 단위로 나누거나 별도의 스레드에서 실행해야 합니다. 이는 이벤트 핸들러를 포함한 모든 애플리케이션 코드가 GUI와 완전히 분리된 다른 스레드에서 실행되는 많은 GUI 툴킷과 대조적입니다.
Tcl 인터프리터가 이벤트 루프를 실행하며 이벤트를 처리하고 있지 않을 때, Tcl 인터프리터를 실행 중인 스레드가 아닌 다른 스레드에서 수행하는 모든 tkinter 호출은 실패하게 됩니다.
몇 가지 특별한 경우가 있습니다:
스레드 지원 없이 빌드된 Tcl/Tk 라이브러리는 이제 드문 사례입니다. Tcl/Tk 9.0(번들 버전)은 항상 스레드를 인식하므로, 이 상황은 오래된 8.x 빌드에서만 발생합니다. 라이브러리가 스레드를 인식하지 못하는 경우,
tkinter는 Tcl 인터프리터를 생성한 스레드와 다르더라도 호출이 시작된 파이썬 스레드에서 라이브러리를 호출합니다. 전역 잠금(global lock)을 통해 한 번에 하나의 호출만 발생하도록 보장합니다.tkinter를 사용하면 자신만의 인터프리터를 가진 여러 개의Tk객체를 생성할 수 있지만, 동일한 스레드에 속한 모든 인터프리터는 공통의 이벤트 큐를 공유하며 이는 곧 문제가 될 수 있습니다. 실제 상황에서는 한 번에 하나 이상의Tk인스턴스를 생성하지 마십시오. 그 외에는 각각을 별도의 스레드에서 생성하고, 스레드 인식형 Tcl/Tk 빌드를 사용하고 있는지 확인하는 것이 좋습니다.Tcl 인터프리터가 이벤트 루프에 재진입하는 것을 막는 방법에는 차단형 이벤트 핸들러만 있는 것이 아닙니다. 여러 개의 중첩된 이벤트 루프를 실행하거나 이벤트 루프를 완전히 포기하는 것도 가능합니다. 이벤트나 스레드와 관련하여 까다로운 작업을 수행할 때는 이러한 가능성들을 염두에 두어야 합니다.
현재 Tcl 인터프리터를 생성한 스레드에서 호출할 때만 작동하는 몇몇의 특정
tkinter함수들이 있습니다.
유용한 레퍼런스¶
옵션 설정¶
옵션은 위젯의 색상과 테두리 너비와 같은 것을 제어합니다. 옵션은 세 가지 방법으로 설정할 수 있습니다:
- 객체 생성 시, 키워드 인자 사용하기
fred = Button(self, fg="red", bg="blue")
- 객체 생성 후, 딕셔너리 인덱스처럼 옵션 이름을 다루기
fred["fg"] = "red" fred["bg"] = "blue"
- config() 메서드를 사용하여 객체 생성 이후 여러 어트리뷰트를 갱신하기.
fred.config(fg="red", bg="blue")
주어진 옵션과 그 동작에 대한 완전한 설명은, 해당 위젯의 Tk 매뉴얼 페이지를 참조하십시오.
매뉴얼 페이지는 각 위젯에 대해 “표준 옵션(STANDARD OPTIONS)”과 “위젯 특정 옵션(WIDGET SPECIFIC OPTIONS)”을 나열합니다. 전자는 많은 위젯에 공통적인 옵션 목록이며, 후자는 그 위젯에만 적용되는 옵션입니다. 표준 옵션은 options(3) 매뉴얼 페이지에 설명되어 있습니다.
이 문서에서는 표준과 위젯 특정 옵션을 구분하지 않습니다. 일부 옵션은 일부 위젯에 적용되지 않습니다. 특정 위젯이 특정 옵션에 응답하는지는 위젯의 클래스에 따라 다릅니다; 버튼에는 command 옵션이 있는데, 레이블은 그렇지 않습니다.
주어진 위젯이 지원하는 옵션은 해당 위젯의 매뉴얼 페이지에 나열되어 있거나, 실행 중에 인자 없이 config() 메서드를 호출하거나 해당 위젯에서 keys() 메서드를 호출하여 확인할 수 있습니다. 이 호출들의 반환 값은 키가 옵션 이름인 문자열(예: 'relief')이고 값이 5-튜플인 딕셔너리입니다.
bg와 같은 일부 옵션은 긴 이름을 가진 공통 옵션의 동의어입니다 (bg는 “background”의 줄임말입니다). config() 메서드에 줄인 옵션을 전달하면 5-튜플이 아닌 2-튜플을 반환합니다. 전달된 2-튜플에는 동의어의 이름과 “실제” 옵션이 담겨있습니다 (가령 ('bg', 'background')).
인덱스 |
의미 |
예 |
|---|---|---|
0 |
옵션 이름 |
|
1 |
데이터베이스 조회를 위한 옵션 이름 |
|
2 |
데이터베이스 조회를 위한 옵션 클래스 |
|
3 |
기본값 |
|
4 |
현재 값 |
|
예:
>>> print(fred.config())
{'relief': ('relief', 'relief', 'Relief', 'raised', 'groove')}
물론, 인쇄된 딕셔너리에는 사용 가능한 모든 옵션과 해당 값이 포함됩니다. 이것은 예시일뿐입니다.
패커¶
패커(packer)는 Tk의 지오메트리 관리 메커니즘 중 하나입니다. 지오메트리 관리자는 컨테이너 내에서 위젯들의 상대적 위치를 지정하는 데 사용됩니다. 더 복잡한 placer*(덜 사용되며 여기서 다루지 않음)와 달리, 패커는 *위에, 왼쪽에, 채우기 등과 같은 정성적인 관계 명세를 받아 여러분을 위해 정확한 배치 좌표를 결정하는 모든 과정을 처리합니다.
모든 컨테이너 위젯의 크기는 내부에 포함된 “콘텐츠 위젯”의 크기에 의해 결정됩니다. 패커는 이러한 콘텐츠 위젯이 팩되는 컨테이너 내에서 어느 위치에 나타날지 제어하는 데 사용됩니다. 원하는 레이아웃을 구현하기 위해 프레임에 위젯을 팩하거나, 프레임을 다른 프레임 안에 넣는 방식으로 구성할 수 있습니다. 또한, 한 번 패킹되면 설정의 점진적인 변경 사항에 맞춰 배치가 동적으로 조정됩니다.
위젯은 지오메트리 관리자를 통해 지오메트리가 지정될 때까지 화면에 나타나지 않는다는 점에 유의하십시오. 지오메트리 명세를 누락하여 위젯이 생성되었으나 아무것도 나타나지 않아 당황하는 것은 초기에 자주 발생하는 실수입니다. 위젯은 예를 들어 패커의 pack() 메서드가 적용된 후에야 나타납니다.
pack() 메서드는 컨테이너 내에서 위젯이 표시되는 위치와 메인 응용 프로그램 윈도우의 크기가 조정될 때 어떻게 동작할지를 제어하는 키워드 옵션/값 쌍으로 호출할 수 있습니다. 여기 몇 가지 예가 있습니다:
fred.pack() # 기본값은 side = "top"
fred.pack(side="left")
fred.pack(expand=1)
패커 옵션¶
패커와 그것이 받을 수 있는 옵션에 대한 더 자세한 정보는 매뉴얼 페이지와 John Ousterhout의 책의 183쪽을 참조하십시오.
- anchor
앵커 타입. 패커가 해당 구역 내에서 각 콘텐츠를 배치할 위치를 나타냅니다.
- expand
불리언(boolean),
0또는1.- fill
유효한 값:
'x','y','both','none'.- ipadx와 ipady
거리 - 콘텐츠의 각 측면에 적용되는 내부 패딩을 지정합니다.
- padx와 pady
거리 - 콘텐츠의 각 측면에 적용되는 외부 패딩을 지정합니다.
- side
유효한 값:
'left','right','top','bottom'.
위젯 변수 결합하기¶
(텍스트 입력 위젯과 같은) 일부 위젯의 현재 값 설정은 특수 옵션을 사용하여 응용 프로그램 변수에 직접 연결할 수 있습니다. 이 옵션은 variable, textvariable, onvalue, offvalue 및 value입니다. 이 연결은 양방향으로 작동합니다: 어떤 이유로 든 변수가 변경되면, 연결된 위젯은 새 값을 반영하도록 갱신됩니다.
불행하게도 현재 tkinter 구현에서는 variable 또는 textvariable 옵션을 통해 임의의 파이썬 변수를 위젯에 전달할 수 없습니다. 이 기능이 작동하는 유일한 유형은 tkinter 에서 정의된 Variable 클래스를 상속받는 변수들입니다.
이미 정의된 유용한 Variable 서브 클래스가 많이 있습니다: StringVar, IntVar, DoubleVar, 그리고 BooleanVar 입니다. 이러한 변수의 현재 값을 읽으려면 해당 위젯의 get() 메서드를 호출하고, 값을 변경하려면 set() 메서드를 호출하십시오. 이 프로토콜을 따르면, 별도의 조작 없이도 위젯이 항상 변수의 값을 추적합니다.
위젯이 해당 변수를 사용하는 동안에는 변수에 대한 참조를 유지하십시오. 예를 들어, 이를 속성으로 저장할 수 있습니다( Variable 참조).
예를 들면:
import tkinter as tk
class App(tk.Frame):
def __init__(self, master):
super().__init__(master)
self.pack()
self.entrythingy = tk.Entry()
self.entrythingy.pack()
# 여기에 응용 프로그램 변수를 만듭니다.
self.contents = tk.StringVar()
# 어떤 값으로 설정합니다
self.contents.set("this is a variable")
# Entry 위젯에 이 변수를 감시하도록 지시합니다.
self.entrythingy["textvariable"] = self.contents
# 사용자가 return 키를 눌렀을 때를 위한 콜백을 정의합니다.
# 변수의 현재값을 인쇄합니다.
self.entrythingy.bind('<Key-Return>',
self.print_contents)
def print_contents(self, event):
print("Hi. The current entry content is:",
self.contents.get())
root = tk.Tk()
myapp = App(root)
myapp.mainloop()
창 관리자¶
Tk에는 창 관리자와 상호 작용하기 위한 유틸리티 명령인 wm 이 있습니다. wm 명령의 옵션을 사용하여 제목, 배치, 아이콘 비트맵 등과 같은 항목을 제어할 수 있습니다. tkinter 에서는 이러한 명령들이 Wm 클래스의 메서드로 구현되었습니다. Toplevel 위젯은 Wm 클래스를 상속받으므로 Wm 메서드를 직접 호출할 수 있습니다.
주어진 위젯을 포함하는 최상위 창을 가져오려면, 종종 위젯의 물론 위젯이 프레임 안에 팩(pack) 되어 있다면, :attr:!master`는 최상위 창을 나타내지 않습니다. 임의의 위젯이 포함된 최상위 창을 가져오려면, winfo_toplevel() 메서드를 호출하면 됩니다. 또한 _root() 메서드도 있으며, 이 메서드는 밑줄로 시작하는데 이는 해당 함수가 구현의 일부이며 Tk 기능에 대한 인터페이스가 아님을 나타냅니다. 이 메서드는 가장 가까운 포함 영역이 아닌 애플리케이션의 루트 창을 반환합니다.
다음은 일반적인 사용 예입니다:
import tkinter as tk
class App(tk.Frame):
def __init__(self, master=None):
super().__init__(master)
self.pack()
# 응용 프로그램을 만듭니다
myapp = App()
#
# 이것들은 창 관리자 클래스에 대한 메서드 호출입니다
#
myapp.master.title("My Do-Nothing Application")
myapp.master.maxsize(1000, 400)
# 프로그램을 시작합니다
myapp.mainloop()
Tk 옵션 데이터 타입¶
- anchor
유효한 값은 나침반의 눈금입니다:
"n","ne","e","se","s","sw","w","nw", 그리고"center".- bitmap
10개의 내장된 이름 있는 비트맵이 있습니다:
'error','gray12','gray25','gray50','gray75','hourglass','info','questhead','question','warning'. X 비트맵 파일명을 지정하려면"@/usr/contrib/bitmap/gumby.bit"와 같이@를 앞에 붙여 파일의 전체 경로를 입력하십시오.- boolean
정수 0이나 1 또는 문자열
"yes"나"no"를 전달할 수 있습니다.- callback
인자를 취하지 않는 파이썬 함수입니다. 예를 들면:
def print_it(): print("hi there") fred["command"] = print_it
- color
색상은 rgb.txt 파일에 있는 X 색상의 이름이나, RGB 값을 4비트:
"#RGB", 8비트:"#RRGGBB", 12비트:"#RRRGGGBBB", 또는 16비트:"#RRRRGGGGBBBB"범위로 표현하는 문자열로 제공됩니다. 여기서 R, G, B는 유효한 임의의 16진수를 나타냅니다. 자세한 내용은 Ousterhout의 책 160쪽을 참조하십시오.- cursor
포인터가 위젯 위에 있을 때 표시할 마우스 커서의 이름입니다. Tk는 모든 플랫폼에서 사용할 수 있는 이식 가능한 커서 이름 세트(예를 들어
"arrow","watch","cross"또는"hand2")를 제공합니다.cursorfont.h에 정의된 표준 X 커서 이름도XC_접두사 없이 사용할 수 있습니다(따라서XC_hand2는"hand2"가 됩니다). 플랫폼 전용 이름을 포함한 전체 목록은 cursors(3tk) 매뉴얼 페이지에서 확인할 수 있습니다. 사용자가 직접 만든 비트맵 및 마스크 파일을 지정할 수도 있습니다. Windows의 경우 커서 파일(.cur또는.ani)을 경로 앞에@를 붙여"@C:/cursors/bart.ani"와 같이 직접 사용할 수 있습니다.- distance
화면 거리는 픽셀이나 절대 거리로 지정할 수 있습니다. 픽셀은 숫자로 절대 거리는 문자열로 지정되며, 끝에 붙는 문자는 단위를 나타냅니다:
c는 센티미터,i는 인치,m은 밀리미터,p는 프린터의 포인트입니다. 예를 들어, 3.5 인치는"3.5i"로 표현됩니다.- font
Tk는
{courier 10 bold}``와 같은 글꼴 설명을 사용하며, :mod:`!tkinter`에서는 이를 ``(family, size, *styles)형태의 튜플(또는 그에 상응하는"Courier 10 bold"문자열)로 전달하는 것이 가장 자연스럽습니다. 양수로 표현된 글꼴 크기는 포인트 단위이며, 음수로 표현된 크기는 픽셀 단위입니다.- geometry
이것은
너비x높이형식의 문자열로, 대부분의 위젯에서 너비와 높이는 픽셀 단위로 측정됩니다 (텍스트를 표시하는 위젯에서는 문자 단위). 예를 들어:fred["geometry"] = "200x100".- justify
유효한 값은
"left","center","right"문자열입니다.- region
이것은 스페이스로 구분된 네 개의 요소가 있는 문자열이며, 각 요소는 유효한 거리(위를 참조하세요)입니다. 예를 들어:
"2 3 4 5"와"3i 2i 4.5i 2i"와"3c 2c 4c 10.43c"는 모두 유효한 영역(region)입니다.- relief
위젯의 테두리 스타일을 결정합니다. 유효한 값은
"raised","sunken","flat","groove","ridge","solid"입니다.- scrollcommand
이것은 거의 항상 어떤 스크롤 막대 위젯의
set()메서드이지만, 단일 인자를 취하는 어떤 위젯 메서드도 가능합니다.- wrap
"none","char"또는"word"중 하나여야 합니다.
바인딩 및 이벤트¶
위젯 명령의 bind 메서드를 사용하면 특정 이벤트를 감시하고 해당 이벤트 유형이 발생할 때 콜백 함수가 트리거 되도록 할 수 있습니다. bind 메서드의 형식은 다음과 같습니다:
def bind(self, sequence, func, add=''):
여기에서:
- sequence
는 대상 이벤트의 종류를 나타내는 문자열입니다. 물리적 이벤트는
<modifier-modifier-type-detail>형식을 사용하며(예:"<Enter>"또는"<Control-Button-1>"), 애플리케이션에서 정의한 가상 이벤트는"<<Paste>"와 같이 이중 꺽쇠를 사용합니다. 자세한 내용은 bind(3tk) 매뉴얼 페이지와 John Ousterhout의 저서 Tcl and the Tk Toolkit (2nd edition) 의 201쪽을 참조하십시오.- func
는 하나의 인자를 취하는 파이썬 함수로, 이벤트가 발생할 때 호출됩니다. 이벤트 인스턴스가 인자로 전달됩니다. (이런 식으로 설치되는 함수를 흔히 콜백(callbacks)이라고 합니다.)
- add
는 선택적이고,
''나'+'입니다. 빈 문자열을 전달하면 이 바인딩이 이 이벤트와 연관된 다른 바인딩을 대체 함을 나타냅니다.'+'를 전달하면 이 함수가 이 이벤트 유형에 바인딩 된 함수 목록에 추가됩니다.
예를 들면:
def turn_red(self, event):
event.widget["activeforeground"] = "red"
self.button.bind("<Enter>", self.turn_red)
이벤트의 widget 필드가 turn_red() 콜백에서 어떻게 액세스 되는지 주목하십시오. 이 필드는 X 이벤트를 포착한 위젯을 포함합니다. 다음 표에는 사용자가 액세스할 수 있는 다른 이벤트 필드와 Tk에서 이들을 표시하는 방법이 나열되어 있습니다. Tk 매뉴얼 페이지를 참조할 때 유용할 수 있습니다.
Tk |
Tkinter 이벤트 필드 |
Tk |
Tkinter 이벤트 필드 |
|---|---|---|---|
%f |
focus |
%A |
char |
%h |
height |
%E |
send_event |
%k |
keycode |
%K |
keysym |
%s |
state |
%N |
keysym_num |
%t |
time |
%T |
type |
%w |
width |
%W |
widget |
%x |
x |
%X |
x_root |
%y |
y |
%Y |
y_root |
%# |
시리얼 |
%b |
숫자 |
%d |
상세 정보 |
%D |
델타 |
위의 add 매개변수는 사용자가 직접 설정한 바인딩에만 영향을 미칩니다. 모든 위젯은 표준 동작을 구현하는 클래스 바인딩 을 상속받습니다. 예를 들어, Text 위젯은 Control-t 를 두 문자의 위치를 바꾸는 기능으로 바인딩합니다. 이러한 사항들은 해당 위젯의 Tk 매뉴얼 페이지(예: text(3tk) 또는 entry(3tk))의 바인딩 섹션에 설명되어 있습니다.
클래스 바인딩은 사용자가 설정한 바인딩과 별도로 처리되므로, 직접 이벤트를 바인딩하더라도 기본 동작이 대체되지 않고 두 가지 모두 실행됩니다. 원하지 않는 기본 바인딩을 억제하려면 위젯에 해당 이벤트를 바인딩하고 콜백에서 "break" 문자열을 반환하십시오.
인덱스 매개변수¶
많은 위젯에는 “index” 매개 변수가 전달되어야 합니다. 이들은 Text 위젯의 특정 위치, Entry 위젯의 특정 문자 또는 Menu 위젯의 특정 메뉴 항목을 가리키는 데 사용됩니다.
- Entry 위젯 인덱스 (인덱스, 뷰 인덱스 등)
Entry 위젯에는 표시되는 텍스트의 문자 위치를 참조하는 옵션이 있습니다. 다음
tkinter함수들을 사용하여 텍스트 위젯에서 이러한 특수 지점에 접근할 수 있습니다.- Text 위젯 인덱스
Text 위젯의 인덱스 표기법은 매우 풍부하며 Tk 매뉴얼 페이지에 자세히 설명되어 있습니다.
- 메뉴 인덱스 (menu.invoke(), menu.entryconfig() 등)
메뉴에 대한 일부 옵션 및 메서드는 특정 메뉴 항목을 조작합니다. 옵션이나 매개 변수에 메뉴 인덱스가 필요한 때는 언제든지 다음과 같이 전달할 수 있습니다:
위에서부터 세고, 0에서 시작하는, 위젯에서 항목의 숫자 위치를 나타내는 정수.
현재 커서 아래에 있는 메뉴 위치를 나타내는, 문자열
"active".마지막 메뉴 항목을 나타내는, 문자열
"last".@6과 같이,@이 앞에 오는 정수로, 정수는 메뉴의 좌표계에서 y 픽셀 좌표로 해석됩니다.아무런 메뉴 항목을 가리키지 않는, 문자열
"none"은 menu.activate()와 함께 사용되어 모든 항목을 비활성화합니다, 마지막으로,메뉴 맨 위에서 아래로 스캔할 때, 메뉴 항목의 레이블과 패턴 일치하는 텍스트 문자열. 이 인덱스 유형은 다른 모든 항목 다음에 고려되므로,
last,active또는none레이블이 붙은 메뉴 항목과의 일치가 대신 위의 리터럴로 해석될 수 있음을 의미합니다.
이미지¶
서로 다른 형식의 이미지를 tkinter.Image의 해당 서브 클래스를 통해 만들 수 있습니다:
XBM 형식의 이미지를 위한
BitmapImage.PGM, PPM, GIF 및 PNG 형식의 이미지를 위한
PhotoImage. 후자는 Tk 8.6부터 지원됩니다.
두 가지 유형의 이미지는 file 또는 data 옵션을 통해 만들어집니다 (다른 옵션도 사용할 수 있습니다).
버전 3.13에서 변경: Added the PhotoImage method copy_replace() to copy a region
from one image to other image, possibly with pixel zooming and/or
subsampling.
Add from_coords parameter to PhotoImage methods copy(),
zoom() and subsample().
Add zoom and subsample parameters to PhotoImage method
copy().
생성된 이미지 객체는 image 옵션이 지원되는 위젯(예: 레이블, 버튼, 메뉴 등)의 어디에나 사용할 수 있습니다. 이 경우 Tk는 이미지에 대한 참조를 유지하지 않습니다. 이미지 객체에 대한 마지막 파이썬 참조가 삭제되면 이미지 데이터도 함께 삭제되며, Tk는 이미지가 사용된 위치에 빈 상자를 표시합니다.
더 보기
Pillow 패키지는 BMP, JPEG, TIFF 및 WebP와 같은 형식을 위한 지원을 추가합니다.
참조¶
이 섹션은 tkinter 모듈의 클래스, 메서드, 함수 및 상수를 기술합니다. 대부분은 Tcl/Tk 명령어를 래핑하고 있으므로, 위젯 옵션의 전체 목록과 상세 정보는 공식 Tcl/Tk 매뉴얼 페이지를 참조하십시오.
- exception tkinter.TclError¶
Tcl 인터프리터 호출이 실패할 때 발생하는 예외입니다. 예를 들어 위젯에 알 수 없는 옵션이나 잘못된 값이 주어질 때 발생합니다.
기본 및 믹스인 클래스¶
- class tkinter.Misc¶
Misc클래스는Tk에 의해 상속되며,BaseWidget을 통해 모든 위젯에 의해 상속되는 믹스인(mix-in)입니다. 이 클래스는 모든 Tk 객성에 공통적으로 필요한 대규모 메서드 세트를 제공합니다: 창 정보 조회, 이벤트 바인딩 및 이벤트 루프 관리, 키보드 포커스 및 포인터 잡 제어, 선택 영역/클립보드/옵션 데이터베이스 액세스, 그리고 다양한 유틸리티 및 인트로스펙션 서비스 등입니다. 이러한 메서드들은 상속을 통해 모든 위젯과Tk애플리케이션 객체에서 사용 가능하며, 각 위젯마다 반복되는 대신 여기에서 한 번만 설명됩니다.- cget(key)¶
이 위젯의 설정 옵션 중 key 라는 이름의 현재 값을 문자열로 반환합니다.
widget[key]표현식도 동일하게 작동하며 대신 사용할 수 있습니다.
- configure(cnf=None, **kw)¶
위젯의 구성 옵션을 조회하거나 수정합니다. 인수가 없으면 사용 가능한 모든 옵션 이름을 각각을 설명하는 튜플(이름, X 리소스 이름, X 리소스 클래스, 기본값, 현재 값)로 매핑한 딕셔너리를 반환합니다. 문자열로 단일 옵션 이름이 제공되면 해당 옵션에 대한 튜플만 반환합니다. 하나 이상의 키워드 인자가 주어지거나 cnf 로 딕셔너리가 전달되면 각 명명된 옵션을 해당하는 값으로 설정합니다.
widget[key] = value표현식도 동일한 방식으로 단일 옵션을 설정합니다.config`는 :meth:()!configure`의 별칭입니다.
- keys()¶
이 위젯의 모든 구성 옵션 이름을 리스트로 반환합니다.
- getboolean(s)¶
문자열 s 를 Tcl 불리언으로 해석하여 해당하는
bool값을 반환합니다. Tcl은'1','0','yes','no','true','false'와 같은 값을 허용합니다. s 가 유효한 불리언이 아니면ValueError를 발생시킵니다.
- getdouble(s)¶
문자열 s 를 Tcl 부동 소수점 숫자로 해석하여
float로 반환합니다. s 가 유효한 숫자가 아니면ValueError를 발생시킵니다.Added in version 3.5.
- getint(s)¶
문자열 s 를 Tcl 정수로 해석하여
int로 반환합니다. s 가 유효한 정수가 아니면ValueError를 발생시킵니다.
- getvar(name)¶
name 이라는 이름의 Tcl 전역 변수 값을 반환합니다.
- setvar(name, value)¶
name 이라는 이름의 Tcl 전역 변수를 value 로 설정합니다.
getvar()및setvar()메서드는 Tcl 변수에 직접 접근합니다. 대부분의 코드에서는 대신 Tcl 변수를 래핑하고 그 값을 파이썬 타입과 상호 변환해 주는StringVar또는IntVar와 같은Variable서브클래스를 사용하게 됩니다.
- register(func, subst=None, needcleanup=1)¶
Python 호출 가능 함수인 func 를 Tcl 명령으로 등록하고 새로운 명령의 이름을 문자열로 반환합니다. Tcl이 해당 명령을 호출할 때마다 func 가 실행되며, subst 가 제공된 경우 먼저 명령의 인자에 적용됩니다. 이는 파이썬 콜백을 command 와 같은 Tk 옵션에 전달되는 명령 이름으로 변환하는 데 내부적으로 사용되는 메커니즘입니다. needcleanup 이 False가 아닌 한, 위젯이 파괴될 때 해당 명령도 자동으로 삭제됩니다.
버전 3.13에서 변경: func 에 전달되는 인자가 더 이상 문자열로 변환되지 않습니다.
- deletecommand(name)¶
register()를 통해 이전에 반환된 것과 같은 name 이라는 이름의 Tcl 명령을 삭제합니다.
- nametowidget(name)¶
name 라는 Tk 경로명에 해당하는 위젯 인스턴스를 반환합니다.
- send(interp, cmd, *args)¶
interp 라는 이름으로 등록된 Tcl 인터프리터에 arg 와 함께 Tcl 명령 cmd 를 보내고 그 결과를 반환합니다. 모든 플랫폼에서 지원되지 않을 수 있습니다.
- destroy()¶
이 위젯과 모든 하위 위젯을 파괴하고 이들과 연관된 Tcl 명령들을 삭제합니다.
- tkraise(aboveThis=None)¶
이 위젯을 적층 순서에서 높여 형제 위젯들의 가장 위에 그려지도록 합니다. aboveThis 가 제공된 경우, 대신 해당 요소 바로 위에 위치하도록 이동합니다.
lift`는 :meth:()!tkraise`의 별칭입니다.
- lower(belowThis=None)¶
이 위젯을 적층 순서에서 낮춰 형제 위젯들 아래에 그려지도록 합니다. belowThis 가 제공된 경우, 대신 해당 요소 바로 아래에 위치하도록 이동합니다.
tkraise()/lift()및lower()는Canvas위젯에 의해 오버라이드되며, 여기서는 캔버스 항목들을 다시 배치하는 역할을 수행합니다.
- image_names()¶
현재 Tcl 인터프리터에 존재하는 모든 이미지의 이름을 반환합니다.
이 메서드는
Text위젯에서 오버라이드되며, 해당 위치에서image_names()는 내장된 이미지들의 이름을 반환합니다.
- image_types()¶
'photo''및'bitmap''과 같은 사용 가능한 이미지 타입을 반환합니다.
- grid_anchor(anchor=None)¶
컨테이너가 그리드보다 크고 행이나 열에 0이 아닌 가중치가 없을 때, 이 컨테이너 내에서 그리드가 배치되는 위치를 제어하는 기준점(anchor)을 설정합니다. anchor 는
'nw'(기본값) 또는'center'와 같은 일반적인 기준점 문자열 중 하나입니다. 인자 없이 호출하면 아무런 영향도 주지 않습니다.anchor`는 :meth:()!grid_anchor`의 별칭입니다.Added in version 3.3.
- grid_bbox(column=None, row=None, col2=None, row2=None)¶
이 컨테이너에 배치된 그리드 영역의 경계 상자를 픽셀 단위의 4-튜플
(xoffset, yoffset, width, height)로 반환합니다. 인자가 없으면 전체 그리드의 경계 상자를 반환합니다. column 과 row 가 주어지면 해당 셀까지의 범위를 포함하며, col2 와 row2 도 함께 제공되면 (column, row)에서 (col2, row2)까지의 영역을 반환합니다.bbox`는 :meth:()!grid_bbox`의 별칭입니다. 단, 자체적인bbox()메서드를 제공하는Canvas,Listbox,Spinbox,Text,ttk.Entry및ttk.Treeview위젯은 예외입니다.
- grid_columnconfigure(index, cnf={}, **kw)¶
이 컨테이너가 관리하는 그리드의 index 열(또는 여러 열)의 속성을 조회하거나 설정합니다. index 는 열 번호일 수 있으며, 옵션을 설정할 때 열 번호들의 리스트나 모든 열에 영향을 주는
'all'문자열 또는 영향받는 열을 포함하는 자식 위젯이 될 수도 있습니다. 지원되는 옵션은 다음과 같습니다.- minsize
열의 최소 크기(픽셀 단위).
- weight
추가 공간이 열에 할당되는 비율을 설정하는 정수입니다. 가중치가
0이면 해당 열은 요청된 크기를 유지하며, 가중치가 2인 열은 가중치가 1인 열보다 두 배 더 빠르게 확장됩니다.- uniform
균등(uniform) 그룹의 이름입니다. 비어 있지 않은 동일한 그룹 이름을 공유하는 열들은 그들의 가중치에 정비례하는 크기로 유지됩니다.
- pad
열 크기를 계산할 때 해당 열에서 가장 큰 위젯에 추가되는 여분 공간(픽셀 단위)입니다.
단일 옵션 이름이 제공되면 해당 옵션의 값을 반환하고, 옵션이 없으면 모든 옵션이 포함된 딕셔너리를 반환합니다.
columnconfigure`는 :meth:()!grid_columnconfigure`의 별칭입니다.
- grid_rowconfigure(index, cnf={}, **kw)¶
이 컨테이너가 관리하는 그리드의 행(또는 여러 행) index 의 속성을 조회하거나 설정합니다. index 는
grid_columnconfigure()와 동일하게 해석되며, 지원되는 옵션(minsize, weight, uniform 및 pad)은 열 대신 행에 적용됩니다.rowconfigure`는 :meth:()!grid_rowconfigure`의 별칭입니다.
- grid_location(x, y)¶
이 컨테이너를 기준으로 한 픽셀 단위의 위치 (x, y)에 해당하는 그리드 셀의
(열, 행)을 반환합니다. 그리드보다 위쪽이나 왼쪽에 위치한 경우 해당 좌표는-1로 반환됩니다.
- grid_propagate()¶
- grid_propagate(flag)
컨테이너가 그리드 지오메트리 관리자로 자식들을 관리할 때 지오메트리 전파(propagation)를 활성화하거나 비활성화합니다. flag 가 참이면 컨테이너는 자식들의 요청된 크기에 맞춰 자신의 크기를 조정하며, 거짓이면 크기 조절은 사용자가 직접 제어하게 됩니다. 인자 없이 호출되면 현재 설정을 불리언 값으로 반환합니다.
- grid_size()¶
이 컨테이너가 관리하는 그리드의 크기를
(열, 행)튜플로 반환합니다.size()는grid_size()의 별칭입니다. 단, 자체적인size()메서드를 제공하는Listbox및ttk.Treeview에서는 예외입니다.
- grid_slaves(row=None, column=None)¶
이 컨테이너의 그리드에서 관리되는 자식 위젯들의 목록을 가장 최근에 관리된 순서대로 반환합니다. row 또는 column 이 제공되면 해당 행이나 열에 있는 자식들만 반환됩니다.
- grid_content(row=None, column=None)¶
grid_slaves()와 동일합니다. 이 컨테이너의 그리드에서 관리되는 자식 위젯들을 반환하며, 선택적으로 특정 row 또는 column 으로 제한할 수 있습니다.Added in version 3.15.
- pack_propagate()¶
- pack_propagate(flag)
컨테이너가 팩(pack) 지오메트리 관리자로 자식들을 관리할 때 지오메트리 전파를 활성화하거나 비활성화합니다. flag 가 참이면 컨테이너는 자식들의 요청된 크기에 맞춰 자신의 크기를 조정하며, 거짓이면 크기 조절은 사용자가 직접 제어하게 됩니다. 인자 없이 호출되면 현재 설정을 불리언 값으로 반환합니다.
propagate`는 :meth:()!pack_propagate`의 별칭입니다.
- pack_slaves()¶
이 컨테이너가 팩 지오메트리 관리자로 관리하는 자식 위젯들의 목록을 패킹 순서대로 반환합니다.
slaves`는 :meth:()!pack_slaves`의 별칭입니다.
- pack_content()¶
pack_slaves()와 동일합니다. 이 컨테이너가 팩 지오메트리 관리자로 관리하는 자식 위젯들의 목록을 패킹 순서대로 반환합니다.content`는 :meth:()!pack_content`의 별칭입니다.Added in version 3.15.
- place_slaves()¶
이 컨테이너가 플레이스(place) 지오메트리 관리자로 관리하는 자식 위젯들의 목록을 반환합니다.
- place_content()¶
place_slaves()와 동일합니다. 이 컨테이너가 플레이스 지오메트리 관리자로 관리하는 자식 위젯들의 목록을 반환합니다.Added in version 3.15.
bind및unbind접두사가 붙은 메서드는 이벤트 패턴을 콜백과 연결하거나 해당 연관 관계를 제거합니다.- bind(sequence=None, func=None, add=None)¶
이 위젯에서 발생하는 이벤트 패턴 sequence 를 호출 가능한(callable) func 에 바인딩합니다.
sequence 는
'<Button-1>'(마우스 클릭) 또는'<KeyPress-a>'와 같은 이벤트 패턴이며, 선택적으로 연달아 발생해야 하는 여러 패턴의 조합으로 구성될 수 있습니다. 이벤트가 발생하면 func 이 이를 설명하는Event인스턴스를 단일 인자로 받아 호출됩니다. 만약 func 가'break'라는 문자열을 반환하면, 해당 이벤트에 대한 추가적인 바인딩은 실행되지 않습니다.add 가 참이면 func 이 이미 sequence 에 바인딩된 함수들에 추가되고, 그렇지 않으면 이를 대체합니다. 이 바인딩은 해당 위젯에만 적용됩니다.
bind()은 나중에 연관된 Tcl 명령을 누출(leak)하지 않고 바인딩을 제거하기 위해unbind()에 전달할 수 있는 문자열 식별자(funcid)를 반환합니다.func 이 생략된 경우 sequence 와 현재 관련된 바인딩을 반환하고, sequence 도 생략된 경우 이 위젯에 바인딩이 존재하는 모든 시퀀스의 목록을 반환합니다.
- bind_class(className, sequence=None, func=None, add=None)¶
bind()와 유사하지만, 단일 위젯 대신 바인딩 태그 className 에 func 를 바인딩하여 해당 태그를 가진 모든 위젯에 바인딩이 적용되도록 합니다. className 은 보통'Button'과 같은 위젯 클래스 이름이며, 이 경우 해당 클래스의 모든 위젯에 영향을 미칩니다. 위젯의 바인딩 태그 집합은bindtags()로 확인하고 변경할 수 있습니다.나머지 인자와 반환 값은
bind()와 동일합니다.
- bind_all(sequence=None, func=None, add=None)¶
bind()와 유사하지만, 특별한 바인딩 태그인'all'에 func 를 바인딩하여 애플리케이션 내의 모든 위젯에 바인딩이 적용되도록 합니다.나머지 인자와 반환 값은
bind()와 동일합니다.
- unbind(sequence, funcid=None)¶
이 위젯에서 이벤트 패턴 sequence 에 대한 바인딩을 제거합니다.
funcid 가 제공된 경우 해당 ID로 식별되는 함수(이전의
bind()호출에서 반환된 값)만 제거되고 관련 Tcl 명령이 삭제됩니다. 그렇지 않으면 sequence 에 대한 모든 바인딩이 파괴되어 바인딩이 해제됩니다.버전 3.13에서 변경: funcid 가 제공된 경우 해당 콜백만 바인딩이 해제되며, sequence 에 바인딩된 다른 콜백들은 유지됩니다.
- unbind_class(className, sequence)¶
바인딩 태그 className 에서 이벤트 패턴 sequence 에 대한 모든 바인딩을 제거합니다.
bind_class()를 참조하십시오.
- unbind_all(sequence)¶
특별 바인딩 태그
'all'에서 이벤트 패턴 sequence 에 대한 모든 바인딩을 제거합니다.bind_all()을 참조하십시오.
- bindtags(tagList=None)¶
tagList 가 생략된 경우 이 위젯과 관련된 바인딩 태그 튜플을 반환합니다. 위젯에서 이벤트가 발생하면 순서대로 각 바인딩 태그에 적용되며, 각 태그에 대해 가장 구체적으로 일치하는 바인딩이 실행됩니다. 기본적으로 위젯은 네 개의 바인딩 태그를 가집니다: 자체 경로명, 위젯 클래스, 가장 가까운 상위(top-level) 조상의 경로명, 그리고
'all'순서입니다.tagList 가 제공된 경우 문자열 시퀀스여야 하며, 위젯의 바인딩 태그는 해당 요소들로 설정되며 이는 바인딩이 평가되는 순서를 결정합니다.
event_접두사가 붙은 메서드는 가상 이벤트를 정의하고 프로그램을 통해 이벤트를 생성합니다.- event_add(virtual, *sequences)¶
가상 이벤트 virtual (이름 형식이
'<<Paste>>'인 것)을 sequences 로 주어진 각각의 물리적 이벤트 패턴과 연결하여, 그중 어느 하나라도 발생할 때마다 가상 이벤트가 트리거되도록 합니다. virtual 이 이미 정의된 경우 새 시퀀스가 기존 시퀀스에 추가됩니다.
- event_delete(virtual, *sequences)¶
가상 이벤트 virtual 과 연결된 것들 중 sequences 의 각 요소를 제거합니다. 현재 virtual 과 연결되어 있지 않은 시퀀스는 무시됩니다. sequences 가 제공되지 않으면 모든 물리적 이벤트 시퀀스가 제거되어 virtual 이 더 이상 트리거되지 않습니다.
- event_generate(sequence, **kw)¶
이 위젯에서 이벤트 sequence*를 생성하고 시스템으로부터 직접 온 것처럼 처리되도록 설정합니다. *sequence*는 여러 개가 결합된 형태가 아닌 ``’<Button-1>’`` 또는 ``’<<Paste>>’``와 같은 단일 이벤트 패턴이어야 합니다. 키워드 인수는 이벤트의 추가 필드를 지정하며, 예를 들어 포인터 위치를 위한 *x*와 *y, 처분 시점을 제어하기 위한 when 등이 있습니다. 전체 목록은 Tk
event매뉴얼 페이지를 참조하십시오.
- event_info(virtual=None)¶
virtual 이 생략된 경우 현재 정의된 모든 가상 이벤트의 튜플을 반환합니다. virtual 이 제공된 경우 그것과 관련된 물리적 이벤트 시퀀스의 튜플을 반환하며, 정의되어 있지 않은 경우 빈 튜플을 반환합니다.
after접두사가 붙은 메서드는 일정 시간 지연 후 또는 애플리케이션이 유휴 상태일 때 실행될 콜백을 예약합니다.- after(ms, func=None, *args, **kw)¶
ms 밀리초 후 콜러블인 func 가 호출되도록 예약하며, 이때 args 와 kw 를 각각 위치 및 키워드 인자로 전달합니다. 호출을 취소할 때
after_cancel()에 전달할 수 있는 식별자를 반환합니다.func 이 생략된 경우 대신 ms 밀리초 동안 대기하며 해당 시간 동안은 아무런 이벤트도 처리하지 않고
None을 반환합니다.버전 3.10에서 변경: func 는 이제 단순한 함수뿐만 아니라 모든 콜러블(callable) 객체일 수 있습니다.
버전 3.14에서 변경: 이제 키워드 인자가 func 에 전달됩니다.
- after_cancel(id)¶
after()또는after_idle()로 이전에 예약된 콜백을 취소합니다. id 는 해당 메서드 중 하나에서 반환한 식별자여야 하며, 적절한 식별자가 아닌 값을 전달하면ValueError가 발생합니다. 콜백이 이미 실행되었거나 취소된 경우 아무런 영향도 없습니다.버전 3.7에서 변경: id 로
None(또는 다른 거짓 값)을 전달하면 이제ValueError가 발생합니다.
- after_idle(func, *args, **kw)¶
Tk 메인 루프가 다음번으로 유휴 상태가 될 때(즉, 처리할 다른 이벤트가 없을 때) 콜러블 func 를 호출하도록 예약하며, 이때 args 와 kw 를 전달합니다. 호출을 취소할 때
after_cancel()에 전달할 수 있는 식별자를 반환합니다.버전 3.14에서 변경: 이제 키워드 인자가 func 에 전달됩니다.
- after_info(id=None)¶
id 가 생략된 경우 이 인터프리터에 대해 현재
after()및after_idle()로 예약된 모든 콜백의 식별자 튜플을 반환합니다.id 가 제공된 경우 아직 실행되거나 취소되지 않은 콜백을 식별해야 하며, 반환 값은
`(script, type)` 튜플입니다. 여기서 script 는 호출될 함수를 가리키고 type 은'idle'또는'timer'중 하나입니다. id 가 존재하지 않으면TclError가 발생합니다.Added in version 3.13.
- mainloop(n=0)¶
모든 창이 파괴될 때까지 이벤트를 처리하는 Tk 이벤트 루프에 진입합니다. 일반적으로 응용 프로그램을 실행하기 위해 루트 창에서 한 번 호출됩니다.
- quit()¶
Tcl 인터프리터를 종료하고
mainloop()가 반환되게 합니다.
- update()¶
유휴 콜백(idle callbacks)을 포함한 모든 대기 중인 이벤트가 처리될 때까지 이벤트 루프에 진입합니다. 이 과정에서 디스플레이를 최신 상태로 업데이트하고 이미 큐에 쌓인 이벤트를 처리한 후 반환됩니다.
- update_idletasks()¶
모든 대기 중인 유휴 콜백이 호출될 때까지 이벤트 루프에 진입합니다. 이 과정은 기하학적 구조 변경 후와 같이 창의 디스플레이를 업데이트하지만, 사용자에 의해 발생한 이벤트는 처리하지 않습니다.
- wait_variable(name)¶
Tcl 변수 name 이 수정될 때까지 기다리며, 그동안 응용 프로그램의 반응성을 유지하기 위해 이벤트를 계속 처리합니다. name 은 일반적으로
IntVar또는StringVar와 같은Variable인스턴스입니다.waitvar`는 :meth:()!wait_variable`의 별칭입니다.
- wait_window(window=None)¶
window 이 파괴될 때까지 기다리며, 그동안 이벤트를 계속 처리합니다. window 를 생략하면 이 위젯이 사용됩니다. 이는 보통 사용자가 대화 상자와의 상호작용을 마칠 때까지 기다릴 때 사용됩니다.
- wait_visibility(window=None)¶
window 의 가시성 상태가 변경될 때까지 기다리며(예를 들어 화면에 처음 나타날 때), 그동안 이벤트를 계속 처리합니다. window 를 생략하면 이 위젯이 사용됩니다. 이는 보통 새로 생성된 창이 보이게 된 후 동작을 수행하기 위해 대기할 때 사용됩니다.
focus_접두사가 붙은 메서드는 키보드 포커스를 관리합니다.- focus()¶
이 위젯의 디스플레이에 대한 키보드 입력 포커스를 이 위젯으로 향하게 합니다. 현재 응용 프로그램이 이 위젯의 디스플레이에 입력 포커스를 가지고 있지 않은 경우, 해당 위젯은 최상위 수준(top level)의 포커스 창으로 기억되며, 다음에 윈도우 관리자가 최상위 수준에 포커스를 줄 때 이 위젯으로 포커스가 다시 유도됩니다.
focus`는 :meth:()!focus_set`의 별칭입니다. 단, 자체적인focus()메서드를 제공하는Canvas및ttk.Treeview위젯은 제외됩니다.
- focus_force()¶
응용 프로그램이 현재 위젯의 디스플레이에 대한 입력 포커스를 가지고 있지 않더라도 키보드 입력 포커스를 이 위젯으로 향하게 합니다. 이 메서드는 가급적 자제하여 사용해야 합니다. 일반적으로 응용 프로그램은 포커스를 강제로 가져오기보다는 윈도우 관리자가 포커스를 부여할 때까지 기다려야 합니다.
- focus_get()¶
현재 응용 프로그램에서 키보드 포커스를 가진 위젯을 반환하며, 포커스를 가진 위젯이 없으면
None을 반환합니다. 여러 디스플레이에서 올바르게 작동하려면focus_displayof()를 사용하십시오.
- focus_displayof()¶
이 위젯이 위치한 디스플레이에서 현재 키보드 포커스를 가진 위젯을 반환하며, 해당 디스플레이에 포커스가 있는 위젯이 없으면
None을 반환합니다.
- focus_lastfor()¶
이 위젯과 동일한 최상위 수준에 있는 모든 위젯 중 가장 최근에 키보드 포커스를 가졌던 위젯을 반환합니다. 이 위젯은 윈도우 관리자가 해당 최상위 수준에 다음으로 포커스를 부여할 때 포커스를 받게 될 위젯입니다. 해당 최상위 수준의 어떤 위젯도 포커스를 가진 적이 없거나, 가장 최근에 포커스를 가졌던 위젯이 삭제된 경우 최상위 수준 자체가 반환됩니다.
- tk_focusFollowsMouse()¶
Tk를 마우스 포인터가 위젯에 들어갈 때마다 해당 위젯으로 포커스가 설정되는 암시적(implicit) 포커스 모델을 사용하도록 재구성합니다. 일단 활성화되면 쉽게 비활성화할 수 없습니다.
- tk_focusNext()¶
키보드 순회(traversal) 순서에서 이 다음에 오는 위젯을 반환하며, 없으면
None을 반환합니다. 순회 순서는 먼저 다음 자식으로 이동하고, 그 후 해당 자식의 자식들을 재귀적으로 탐색하며, 그다음 스택 순서에서 더 높은 위치에 있는 다음 형제 요소로 이동합니다.takefocus옵션이0으로 설정된 위젯은 건너뜁니다. 이 메서드는 Tab 키의 기본 바인딩에서 사용됩니다.
- tk_focusPrev()¶
키보드 순회 순서에서 이 앞의 위젯을 반환하며, 없으면
None을 반환합니다. 순서 정의 방식은tk_focusNext()를 참조하십시오. 이 메서드는 Shift-Tab 키의 기본 바인딩에서 사용됩니다.
grab_접두사가 붙은 메서드는 모든 입력 이벤트를 단일 위젯으로 향하게 하는 입력 그랩(grab)을 설정하거나 조회합니다.- grab_set()¶
이 위젯에 로컬 그랩을 설정합니다. 그랩은 포인터 이벤트를 이 위젯과 그 자손들로 제한합니다. 포인터가 위젯의 하위 트리 밖에 있는 동안 버튼 누름/해제 및 포인터 이동 이벤트는 그랩된 위젯에 보고되며, 하위 트리 밖의 창들은 그랩이 해제될 때까지 반응하지 않게 됩니다. 로컬 그랩은 그랩을 수행하는 응용 프로그램에만 영향을 미칩니다. 이 응용 프로그램이 해당 위젯의 디스플레이에 이전에 설정한 모든 그랩은 자동으로 해제됩니다. 그랩을 설정하는 것은 대화 상자를 모달(modal)로 만드는 일반적인 방법입니다. 그랩이 활성화된 동안 사용자는 응용 프로그램의 다른 창과 상호작용할 수 없습니다.
- grab_set_global()¶
이 위젯에 글로벌 그랩을 설정합니다. 글로벌 그랩은
grab_set()에 의해 설정되는 로컬 그랩과 유사하지만, 화면상의 모든 다른 응용 프로그램을 차단하여 이 위젯의 하위 트리만이 포인터 이벤트에 반응하게 하며 키보드도 점유합니다. 주의해서 사용하십시오. 글로벌 그랩이 해제될 때까지 다른 응용 프로그램이 이벤트를 수신하지 못하므로 디스플레이를 사용할 수 없게 만들기 쉽습니다.
- grab_release()¶
그랩이 설정되어 있다면 이 위젯의 그랩을 해제합니다. 그렇지 않으면 아무 작업도 하지 않습니다.
- grab_current()¶
이 응용 프로그램에서 이 위젯의 디스플레이에 대해 현재 그랩을 보유하고 있는 위젯을 반환하며, 해당 위젯이 없으면
None을 반환합니다.
- grab_status()¶
이 위젯에 그랩이 설정되어 있지 않으면
None을, 로컬 그랩이 설정되어 있으면"local"을, 글로벌 그랩이 설정되어 있으면"global"을 반환합니다.
selection_접두사가 붙은 메서드는 X 선택(X selection)을 조회하고 관리합니다.- selection_clear(**kw)¶
X 선택을 지워 더 이상 어떤 창도 이를 소유하지 않게 합니다. 지울 선택은 키워드 인수 selection*으로 지정하며, ``’PRIMARY’`` 또는 ``’CLIPBOARD’``와 같은 옴(atom) 이름입니다. 기본값은 ``PRIMARY``입니다. *displayof 키워드 인수는 작업을 수행할 디스플레이를 결정하는 위젯을 지정하며, 기본적으로 이 위젯이 됩니다.
이 메서드는
Entry,Listbox,Spinbox위젯에서 재정의되며, 이 경우selection_clear()는 해당 위젯 자체의 선택을 지웁니다.
- selection_get(**kw)¶
현재 X 선택의 내용을 반환합니다. 키워드 인수 selection*은 선택 사항을 지정하며 기본값은 ``PRIMARY``입니다. 키워드 인수 *type*은 데이터가 반환될 형식(원하는 변환 대상)을 지정하며, ``’STRING’`` 또는 ``’FILE_NAME’``과 같은 옴 이름입니다. X11 환경을 제외하고 기본값은 ``STRING``이며, X11에서는 ``UTF8_STRING``이 먼저 시도되고 실패할 경우 ``STRING``이 사용됩니다. *displayof 키워드 인수는 선택을 가져올 디스플레이를 결정하는 위젯을 지정하며, 기본적으로 이 위젯이 됩니다.
- selection_handle(command, **kw)¶
다른 응용 프로그램이 요청할 때 이 위젯이 소유한 X 선택을 제공하는 처리기로 command 를 등록합니다. 선택 사항이 검색될 때 command 는 시작 문자 오프셋과 반환할 최대 문자의 수라는 두 개의 인수를 가지고 호출되며, 해당 오프셋부터 시작하여 최대 그만큼의 문자를 반환해야 합니다. 매우 긴 선택의 경우 증가하는 오프셋으로 여러 번 반복 호출됩니다. 키워드 인수 selection 은 선택 사항을 지정하며(기본값
PRIMARY), 키워드 인수 type 은 처리기가 제공할 선택 형식(예:'STRING'' 또는 `` 'FILE_NAME', 기본값 `` STRING``)을 정의합니다.
- selection_own(**kw)¶
이 위젯을 해당 디스플레이의 X 선택 소유자로 설정합니다. 이전 소유자가 있는 경우, 해당 소유자에게 선택 권한을 잃었음을 알립니다. 키워드 인수 selection 은 선택 사항을 지정하며 기본값은
PRIMARY입니다.
- selection_own_get(**kw)¶
이 위젯을 포함하는 디스플레이에서 X 선택을 소유하고 있는 이 응용 프로그램 내의 위젯을 반환하며, 해당 위젯이 없으면
None을 반환합니다. 키워드 인수 selection 은 선택 사항을 지정하며 기본값은PRIMARY입니다. displayof 키워드 인수는 조회할 디스플레이를 결정하는 위젯을 지정하며, 기본적으로 이 위젯이 됩니다.
clipboard_접두사가 붙은 메서드들은 클립보드를 관리합니다.- clipboard_append(string, **kw)¶
string 을 Tk 클립보드에 추가하고 이 위젯의 디스플레이에서 클립보드 소유권을 주장합니다. 추가하기 전에
clipboard_clear()를 사용하여 클립보드를 비워야 하며, 모든 추가가 완료된 후 이벤트 루프로 복귀해야 클립보드가 원자적으로(atomically) 업데이트됩니다. 키워드 인수 type 은 데이터의 형식을 지정하며,'STRING'또는'FILE_NAME'과 같은 옴 이름입니다(기본값STRING). 키워드 인수 format 은 전송에 사용되는 표현 방식을 지정합니다(기본값STRING). displayof 키워드 인수는 대상 디스플레이를 결정하는 위젯을 지정하며, 기본적으로 이 위젯이 됩니다. 내용은clipboard_get()또는selection_get()으로 가져올 수 있습니다.
- clipboard_clear(**kw)¶
이 위젯의 디스플레이에서 클립보드 소유권을 주장하고 이전 내용을 제거합니다. displayof 키워드 인수는 대상 디스플레이를 결정하는 위젯을 지정하며, 기본적으로 이 위젯이 됩니다.
- clipboard_get(**kw)¶
이 위젯의 디스플레이에서 클립보드 데이터를 가져옵니다. 키워드 인수 type 은 데이터가 반환될 형식을 지정하며,
'STRING'또는'FILE_NAME'과 같은 옴 이름입니다. X11을 제외하고 기본값은STRING이며, X11에서는UTF8_STRING이 먼저 시도되고 실패할 경우STRING이 사용됩니다. displayof 키워드 인수는 디스플레이를 결정하는 위젯을 지정하며, 기본적으로 응용 프로그램의 루트 창이 됩니다. 이는selection_get(selection='CLIPBOARD')와 동일하게 동작합니다.
option_접두사가 붙은 메서드들은 Tk 옵션 데이터베이스를 조회하고 수정합니다.- option_add(pattern, value, priority=None)¶
Tk 옵션 데이터베이스에 pattern 과 value 를 연결하는 옵션을 추가합니다. pattern 은 표준 X 형식에 따라 별표(*) 또는 점(.)으로 구분된 이름 및/또는 클래스로 구성됩니다. * priority*는 0에서 100 사이의 정수이거나,
'widgetDefault'(20),'startupFile'(40),'userDefault'(60), 또는'interactive'(80) 중 하나의 기호적 이름입니다. 기본값은interactive입니다.
- option_clear()¶
Tk 옵션 데이터베이스를 비웁니다.
RESOURCE_MANAGER속성 또는.Xdefaults파일의 기본 옵션은 다음번에 옵션을 추가하거나 제거할 때 자동으로 다시 로드됩니다.
- option_get(name, className)¶
Tk 옵션 데이터베이스에서 name 및 className 에 따라 이 위젯과 일치하는 옵션의 값을 반환하며, 일치하는 항목이 없으면 빈 문자열을 반환합니다. 여러 항목이 일치하는 경우 우선순위가 가장 높은 것이 선택되며, 우선순위가 동일한 경우에는 가장 최근에 추가된 항목이 선택됩니다.
- option_readfile(fileName, priority=None)¶
fileName 으로 명명된 파일을 읽습니다(해당 파일은
.Xdefaults와 같은 X 리소스 데이터베이스 표준 형식을 따라야 함). 해당 파일에 기술된 모든 옵션을 Tk 옵션 데이터베이스에 추가합니다. priority 는option_add()에서 해석되며 기본값은interactive입니다.
- bell(displayof=0)¶
해당 위젯이 속한 디스플레이에서 현재 벨 관련 설정을 사용하여 벨을 울리고 화면의 화면 보호기를 해제합니다. displayof 가 위젯으로 제공된 경우 해당 위젯의 디스플레이에서 벨이 울립니다.
- tk_setPalette(background, /)¶
- tk_setPalette(*args, **kw)
모든 Tk 위젯 요소에 새로운 색상 구성을 적용합니다. 기존 위젯이 업데이트되고 옵션 데이터베이스가 변경되어 향후 생성되는 위젯들이 새 색상을 사용하게 됩니다. 단일 색상 인수는 일반 배경색으로 간주되며, 이를 바탕으로 전체 팔레트가 계산됩니다. 또는 키워드 name/value 쌍을 사용하여 옵션 데이터베이스의 개별 옵션을 지정할 수도 있습니다. 인식 가능한 옵션 이름은
activeBackground,activeForeground,background,disabledForeground,foreground,highlightBackground,highlightColor,insertBackground,selectColor,selectBackground,selectForeground, 및troughColor이며, 지정되지 않은 항목은 적절한 기본값으로 계산됩니다.
- tk_bisque()¶
응용 프로그램의 색상을 Tk 3.6 및 이전 버전에서 사용된 연한 갈색(bisque) 색상 구성으로 복구합니다. 하위 호환성을 위해 제공됩니다.
- tk_strictMotif(boolean=None)¶
Tk의 외관과 느낌이 Motif를 엄격히 준수해야 하는지 여부를 조회하거나 설정합니다. 참(True)인 경우 엄격한 Motif 준수가 활성화됩니다(예: 마우스가 슬라이더 위를 지나갈 때 색상이 변하지 않음). 결과 설정을 반환합니다.
- tk_appname(name=None)¶
send명령을 통해 이 응용 프로그램과 통신하는 데 사용되는 이름을 조회하거나 설정합니다. 인자가 없으면 현재 이름을 반환하며, 다른 경우에는 이를 name 으로 변경하고 실제 설정된 이름을 반환합니다. 이때 이름은 디스플레이상의 다른 응용 프로그램들과 구분하기 위해 접미사가 붙을 수 있습니다.Added in version 3.16.0a0 (unreleased).
- tk_useinputmethods(boolean=None, *, displayof=0)¶
Tk가 이벤트를 필터링하는 데 X Input Methods(XIM)를 사용하는지 여부를 조회하거나 설정하고 결과 상태를 반환합니다. 이는 X11에서만 중요하며, XIM 지원이 없는 경우 항상
False를 반환합니다.Added in version 3.16.0a0 (unreleased).
- tk_caret(*, x=None, y=None, height=None)¶
위젯 디스플레이의 캐럿 위치를 설정하거나 조회합니다. 캐럿은 접근성을 위한 전역 포커스 표시 및 입력 방식(XIM 또는 IME) 창 배치에 사용되는 디스플레이별 삽입 위치입니다. 인자가 없으면 현재 위치를
'x'', ``'y'', ``'height'키를 가진 딕셔너리로 반환하며, 그렇지 않으면 주어진 좌표로 업데이트합니다.Added in version 3.16.0a0 (unreleased).
- tk_scaling(number=None, *, displayof=0)¶
물리적 단위(포인트, 인치 또는 밀리미터 등)와 픽셀 간의 변환에 Tk가 사용하는 배율을 조회하거나 설정합니다. 이는 포인트당 픽셀 수로 표시됩니다(여기서 1포인트는 1/72인치입니다). 인자가 없으면 현재 계수를 반환하며, 그렇지 않으면 부동 소수점 number 로 설정합니다.
Added in version 3.16.0a0 (unreleased).
- tk_inactive(reset=False, *, displayof=0)¶
사용자가 마지막으로 시스템과 상호작용한 후 경과된 밀리초 수를 반환하며, 윈도우 시스템이 이를 지원하지 않는 경우
-1을 반환합니다. reset 이 True인 경우 비활성 타이머를 0으로 재설정하고None을 반환합니다.Added in version 3.16.0a0 (unreleased).
busy_접두사가 붙은 메서드들은 창의 바쁨(busy) 상태를 관리하며, 이 상태에서는 바쁜 커서가 표시되고 사용자 입력이 무시됩니다.- tk_busy_hold(**kw)¶
이 위젯을 바쁜 상태로 만듭니다. 투명한 창이 위젯 앞에 배치되어, 해당 위젯과 계층 구조상 모든 자식 위젯들이 포인터 이벤트를 차단하고 바쁜 커서를 표시하게 됩니다. 일반적으로 응용 프로그램이 처리를 시작하기 전에 대기 작업이 적용되었는지 확인하기 위해 즉시 후에
update()를 호출해야 합니다.지원되는 유일한 구성 옵션은 위젯이 바쁜 동안 표시될 커서인 cursor 이며, 이는
configure()에서 수용하는 모든 값을 가질 수 있습니다.busy_hold(),busy(),tk_busy`는 :meth:()!tk_busy_hold`의 별칭입니다.Added in version 3.13.
- tk_busy_configure(cnf=None, **kw)¶
바쁨 창의 구성 옵션을 조회하거나 수정합니다. 위젯은 먼저
tk_busy_hold()에 의해 바쁨 상태로 설정되어야 합니다. 인자가 없으면 사용 가능한 모든 옵션을 설명하는 딕셔너리를 반환하며, cnf 가 옵션 이름인 경우 해당 옵션을 설명하는 튜플을 반환합니다. 그렇지 않으면 주어진 옵션을 해당 값으로 설정합니다. 옵션은tk_busy_hold()에서 수용되는 어떤 값도 가질 수 있습니다.옵션 데이터베이스는 위젯 이름이나 클래스를 통해 참조됩니다. 예를 들어, 이름이
frame인Frame위젯을 바쁨 상태로 만들 경우, 다음 중 하나의 호출을 통해 바쁨 커서를 지정할 수 있습니다:w.option_add('*frame.busyCursor', 'gumby') w.option_add('*Frame.BusyCursor', 'gumby')
busy_configure(),busy_config()및tk_busy_config`은 :meth:()!tk_busy_configure`의 별칭입니다.Added in version 3.13.
- tk_busy_cget(option)¶
busy 설정 옵션 의 현재 값을 반환합니다. 위젯은 이전에
tk_busy_hold()에 의해 바쁘게(busy) 설정되어 있어야 하며, option 은 해당 메서드에서 허용하는 모든 값을 가질 수 있습니다.busy_cget`은 :meth:()!tk_busy_cget`의 별칭입니다.Added in version 3.13.
- tk_busy_forget()¶
이 위젯을 더 이상 바쁘지 않은 상태로 만들고, 위젯이 바쁘게 설정될 때 할당된 리소스(투명 창 포함)를 해제합니다. 이제 위젯은 사용자 이벤트를 다시 수신하게 됩니다. 이러한 리소스는 위젯이 파괴될 때도 해제됩니다.
busy_forget`은 :meth:()!tk_busy_forget`의 별칭입니다.Added in version 3.13.
- tk_busy_status()¶
위젯이 현재 바쁜 상태이면
True를, 그렇지 않으면False를 반환합니다.busy_status`은 :meth:()!tk_busy_status`의 별칭입니다.Added in version 3.13.
- tk_busy_current(pattern=None)¶
현재 바쁜 위젯들의 리스트를 반환합니다. pattern 이 제공되면 경로 이름이 해당 패턴과 일치하는 바쁜 위젯만 반환됩니다.
busy_current`은 :meth:()!tk_busy_current`의 별칭입니다.Added in version 3.13.
winfo_접두사가 붙은 메서드들은 Tk에 의해 관리되는 창에 대한 정보를 가져옵니다.- winfo_atom(name, displayof=0)¶
name 이라는 이름을 가진 옴(atom)의 정수 식별자를 반환하며, 존재하지 않을 경우 새로운 옴을 생성합니다. displayof 가 제공되면 해당 창의 디스플레이에서 옴을 찾고, 그렇지 않으면 애플리케이션 메인 창의 디스플레이에서 찾습니다.
- winfo_atomname(id, displayof=0)¶
정수 식별자가 id 인 옴의 텍스트 이름을 반환합니다. 이는
winfo_atom()의 역과정입니다. displayof 가 제공되면 해당 창의 디스플레이에서 식별자를 찾고, 그렇지 않으면 애플리케이션 메인 창의 디스플레이에서 찾습니다.
- winfo_cells()¶
위젯을 위한 컬러맵의 셀 수를 반환합니다.
- winfo_children()¶
위젯의 자식 위젯들을 아래에서 위로 쌓인 순서대로 포함하는 리스트를 반환합니다. Top-level 창은 논리적 부모의 자식으로 반환됩니다.
- winfo_class()¶
위젯의 클래스 이름을 반환합니다.
- winfo_colormapfull()¶
위젯의 컬러맵이 가득 찬 것으로 확인되면
True를, 그렇지 않으면False를 반환합니다.
- winfo_containing(rootX, rootY, displayof=0)¶
rootX 와 rootY 로 지정된 좌표를 포함하는 위젯을 반환하며, 이 애플리케이션 내에 해당 지점을 포함하는 창이 없으면
None을 반환합니다. 좌표는 루트 창의 좌표계에서 화면 단위(screen units)로 계산됩니다. displayof 가 제공되면 해당 디스플레이 내의 화면 좌표를 참조하며, 그렇지 않으면 애플리케이션 메인 창의 화면을 기준으로 합니다.
- winfo_depth()¶
위젯의 깊이(depth), 즉 픽셀당 비트 수를 반환합니다.
- winfo_exists()¶
위젯이 존재하면
1을, 그렇지 않으면0을 반환합니다.
- winfo_fpixels(number)¶
화면 거리 number (예:
"2.0c"또는"1i")에 해당하는 위젯의 픽셀 수를 부동 소수점 값으로 반환합니다. 결과가 소수점일 수 있으므로, 반올림된 정수 값이 필요한 경우winfo_pixels()를 사용하십시오.
- winfo_geometry()¶
위젯의 기하학적 정보를
너비x높이+x+y형식으로 반환합니다. 모든 치수는 픽셀 단위입니다. 오프셋은 음수일 수 있습니다. 자세한 내용은geometry()를 참조하십시오.
- winfo_height()¶
위젯의 높이를 픽셀 단위로 반환합니다. 창이 처음 생성될 때 높이는 1픽셀이며, 이후 지오메트리 관리자에 의해 변경됩니다. 또한
winfo_reqheight()를 참조하십시오.
- winfo_id()¶
위젯에 대한 낮은 수준의 플랫폼 전용 식별자를 반환합니다. Unix에서는 X 윈도우 식별자이며, Windows에서는 윈도우 핸들입니다.
- winfo_interps(displayof=0)¶
특정 디스플레이에 현재 등록된 모든 Tcl 인터프리터 이름의 튜플을 반환합니다. displayof 가 제공되면 해당 창의 디스플레이를 기준으로 하며, 그렇지 않으면 애플리케이션 메인 창의 디스플레이를 기준으로 합니다.
- winfo_isdark()¶
macOS 및 Windows에서 위젯이 “다크 모드”이면
True를, 그렇지 않으면False를 반환합니다. X11에서는 항상False를 반환합니다.Added in version 3.16.0a0 (unreleased): Tk 9.1 이상이 필요합니다.
- winfo_ismapped()¶
위젯이 현재 매핑되어 있으면
1을, 그렇지 않으면0을 반환합니다.
- winfo_manager()¶
현재 위젯을 담당하는 지오메트리 관리자의 이름을 반환하며, 어떤 관리자도 담당하지 않는 경우 빈 문자열을 반환합니다.
- winfo_name()¶
위젯의 전체 경로 대신 부모 내에서의 위젯 이름을 반환합니다.
- winfo_parent()¶
위젯 부모의 경로를 반환하며, 위젯이 애플리케이션의 메인 창인 경우 빈 문자열을 반환합니다.
- winfo_pathname(id, displayof=0)¶
id 가 식별자인 창의 경로를 반환합니다. displayof 가 제공되면 해당 창의 디스플레이에서 찾고, 그렇지 않으면 애플리케이션 메인 창의 디스플레이에서 찾습니다.
- winfo_pixels(number)¶
화면 거리 number (예:
"2.0c"또는"1i")에 해당하는 위젯의 픽셀 수를 반환합니다. 결과는 가장 가까운 정수로 반올림됩니다. 소수점 결과를 얻으려면winfo_fpixels()를 사용하십시오.
- winfo_pointerx()¶
화면의 루트 윈도우(또는 사용 중인 경우 가상 루트)를 기준으로 한 포인터의 x 좌표(픽셀 단위)를 반환합니다. 포인터가 위젯과 동일한 화면에 있지 않으면
-1을 반환합니다.
- winfo_pointerxy()¶
화면의 루트 윈도우(또는 사용 중인 경우 가상 루트)를 기준으로 한 포인터의 좌표를
(x, y)튜플로 반환합니다. 포인터가 위젯과 동일한 화면에 있지 않으면 두 좌표 모두-1을 반환합니다.
- winfo_pointery()¶
화면의 루트 윈도우(또는 사용 중인 경우 가상 루트)를 기준으로 한 포인터의 y 좌표(픽셀 단위)를 반환합니다. 포인터가 위젯과 동일한 화면에 있지 않으면
-1을 반환합니다.
- winfo_reqheight()¶
위젯이 요청한 높이(픽셀 단위)를 반환합니다. 이 값은 지오메트리 관리자가 위젯의 지오메트리를 계산하는 데 사용됩니다.
- winfo_reqwidth()¶
위젯이 요청한 너비(픽셀 단위)를 반환합니다. 이 값은 지오메트리 관리자가 위젯의 지오메트리를 계산하는 데 사용됩니다.
- winfo_rgb(color)¶
위젯의 color 에 해당하는 빨강, 녹색, 파랑 강도(범위: 0~65535)를
(r, g, b)튜플로 반환합니다. color 는 컬러 옵션에서 허용하는 모든 형식을 사용할 수 있습니다.
- winfo_rootx()¶
화면의 루트 윈도우에서 위젯 테두리의 왼쪽 상단 모서리(테두리가 없는 경우 위젯 자체)의 x 좌표를 반환합니다.
- winfo_rooty()¶
화면의 루트 윈도우에서 위젯 테두리의 왼쪽 상단 모서리(테두리가 없는 경우 위젯 자체)의 y 좌표를 반환합니다.
- winfo_screen()¶
위젯과 연관된 화면의 이름을
표시이름.화면인덱스형식으로 반환합니다.
- winfo_screencells()¶
위젯 화면의 기본 컬러맵 내 셀 수를 반환합니다.
- winfo_screendepth()¶
위젯 화면의 루트 윈도우 깊이(즉, 픽셀당 비트 수)를 반환합니다.
- winfo_screenheight()¶
위젯 화면의 높이를 픽셀 단위로 반환합니다.
- winfo_screenmmheight()¶
위젯 화면의 높이를 밀리미터(mm) 단위로 반환합니다.
- winfo_screenmmwidth()¶
위젯 화면의 너비를 밀리미터(mm) 단위로 반환합니다.
- winfo_screenvisual()¶
위젯 화면의 기본 비주얼 클래스를 반환합니다. 후보는
"directcolor","grayscale","pseudocolor","staticcolor","staticgray"또는"truecolor"입니다.
- winfo_screenwidth()¶
위젯 화면의 너비를 픽셀 단위로 반환합니다.
- winfo_server()¶
위젯 디스플레이에 대한 서버 정보를 포함한 문자열을 반환합니다. 이 문자열의 정확한 형식은 플랫폼마다 다를 수 있습니다.
- winfo_viewable()¶
위젯과 가장 가까운 상위 레벨(toplevel) 창에 이르기까지 모든 조상 요소가 매핑되어 있으면
1을, 그렇지 않으면0을 반환합니다.
- winfo_visual()¶
위젯의 비주얼 클래스를 반환합니다. 후보는
"directcolor","grayscale","pseudocolor","staticcolor","staticgray"또는"truecolor"입니다.
- winfo_visualid()¶
위젯의 비주얼에 대한 X 식별자를 반환합니다.
- winfo_visualsavailable(includeids=False)¶
위젯 화면에서 사용 가능한 비주얼을 설명하는 리스트를 반환합니다. 각 항목은 비주얼 클래스(참조:
winfo_visual())와 정수 깊이로 구성됩니다. includeids 가 참이면 비주얼의 X 식별자도 포함됩니다.
- winfo_vrootheight()¶
위젯과 연관된 가상 루트 창이 있으면 그 높이를 반환하고, 없으면 위젯 화면의 높이를 반환합니다.
- winfo_vrootwidth()¶
위젯과 연관된 가상 루트 창이 있으면 그 너비를 반환하고, 없으면 위젯 화면의 너비를 반환합니다.
- winfo_vrootx()¶
위젯과 연관된 가상 루트 창의 x 오프셋을 해당 화면의 루트 윈도우를 기준으로 반환합니다. 일반적으로 이 값은 0이거나 음수이며, 가상 루트 윈도우가 없는 경우
0입니다.
- winfo_vrooty()¶
위젯과 연관된 가상 루트 창의 y 오프셋을 해당 화면의 루트 윈도우를 기준으로 반환합니다. 일반적으로 이 값은 0이거나 음수이며, 가상 루트 윈도우가 없는 경우
0입니다.
- winfo_width()¶
위젯의 너비를 픽셀 단위로 반환합니다. 창이 처음 생성될 때 너비는 1픽셀이며, 이후 지오메트리 관리자에 의해 변경됩니다. 또한
winfo_reqwidth()를 참조하십시오.
- winfo_x()¶
위젯의 부모 내에서 위젯 테두리의 왼쪽 상단 모서리(테두리가 없는 경우 위젯 자체)의 x 좌표를 반환합니다.
- winfo_y()¶
위젯의 부모 내에서 위젯 테두리의 왼쪽 상단 모서리(테두리가 없는 경우 위젯 자체)의 y 좌표를 반환합니다.
- info_patchlevel()¶
Tcl/Tk 패치 수준을
sys.version_info`와 동일한 5개 필드(*major*, *minor*, *micro*, *releaselevel*, *serial*)를 가진 명명된 튜플로 반환합니다. *releaselevel*은 `’alpha’, ``'beta'또는'final'``입니다. 이를 문자열로 변환하면 일반적인 Tcl/Tk 표기법(예: 최종 버전의 경우 ``'9.0.3', 사전 출시용의 경우'9.1b2')으로 표현됩니다.Added in version 3.11.
- class tkinter.Wm¶
Wm믹스인은 창 관리자에 대한 접근을 제공하여 애플리케이션이 최상위 창의 제목, 지오메트리 및 아이콘, 크기 조절 방식, 그리고 창 관리자 프로토콜에 대한 응답 등을 제어할 수 있게 합니다. 이 클래스는Tk와Toplevel에 혼합되어 모든 최상위 창에서 메서드를 사용할 수 있습니다. 각 메서드는 짧은 이름과wm_접두사가 붙은 이름(예를 들어,title()과wm_title())이라는 두 가지 동등한 표기 방식을 가집니다.- aspect(minNumer=None, minDenom=None, maxNumer=None, maxDenom=None)¶
창의 종횡비(너비와 높이의 비율)를 제한합니다. 4개의 인수가 모두 제공되면 창 관리자가 비율을
minNumer/minDenom``과 ``maxNumer/maxDenom사이로 유지하며, 빈 문자열을 전달하면 기존 제한을 제거합니다. 인수가 없으면 현재 설정된 4개 값의 튜플을 반환하고, 종횡비 제한이 적용되지 않은 경우 빈 문자열을 반환합니다.wm_aspect`는 :meth:()!aspect`의 별칭입니다.
- attributes(*args, return_python_dict=False, **kwargs)¶
창의 플랫폼 전용 속성을 조회하거나 설정합니다. 인자가 없으면 플랫폼별 플래그와 해당 값을 반환하며, return_python_dict 를 True로 전달하면 딕셔너리 형태로 받습니다.
'alpha''와 같은 단일 옵션 이름을 사용하면 해당 옵션의 값을 반환하고, 키워드 인자(예:alpha=0.5)를 사용하여 옵션을 설정합니다.사용 가능한 속성은 플랫폼마다 다릅니다. 모든 플랫폼에서 지원하는 기능은 다음과 같습니다:
- alpha
창의 불투명도(범위:
0.0(완전 투명) ~1.0(불투명)). 투명도를 지원하지 않는 경우 값은1.0으로 유지됩니다.- appearance
Windows 및 macOS에서 창이 다크 모드로 렌더링되는지 여부:
'auto','light'또는'dark'(X11에서는 영향이 없습니다).- fullscreen
창이 화면 전체를 차지하고 테두리가 없는지 여부.
- topmost
창이 다른 모든 창보다 위에 표시되는지 여부.
Windows에서 추가로 지원하는 항목:
- disabled
창이 비활성화된 상태인지 여부.
- toolwindow
창이 도구 창(tool window) 스타일을 사용하는지 여부.
- transparentcolor
완전히 투명하게 처리할 색상입니다. 설정하지 않으려면 빈 문자열을 사용하십시오.
macOS에서 추가로 지원하는 기능은 다음과 같습니다:
- class
기본 Aqua 창이
nswindow인지 또는nspanel인지 여부를 설정합니다. 이 값은 창이 생성되기 전에만 설정할 수 있습니다.- modified
창의 닫기 버튼과 프록시 아이콘에 표시되는 수정 상태입니다.
- notify
사용자 주의를 끌기 위해 애플리케이션의 Dock 아이콘이 튀어 오르는지 여부입니다.
- stylemask
기본 Aqua 창의 스타일 마스크로,
titled또는resizable과 같은 비트 이름들의 리스트로 제공됩니다.- tabbingid
해당 창이 속한 탭 그룹의 식별자입니다.
- tabbingmode
창을 탭으로 열 수 있는지 여부입니다. 옵션은
'auto','preferred'또는'disallowed'가 있습니다.- titlepath
창의 프록시 아이콘이 나타내는 파일의 경로입니다.
- transparent
콘텐츠 영역이 투명한지, 그리고 창의 그림자가 꺼져 있는지 여부입니다.
X11에서 추가로 지원하는 기능은 다음과 같습니다:
- type
창 관리자가 창을 해석할 때 사용해야 하는 창 유형 또는 우선순위에 따른 유형 리스트입니다. 예:
'dialog'또는'splash'.- zoomed
창이 최대화되었는지 여부입니다.
참고
Tk 8.6에서 type 속성이 추가되었으며, Tk 9.0에서 appearance, class, stylemask, tabbingid, tabbingmode 속성이 추가되었습니다.
X11에서는 변경 사항이 비동기적으로 적용되므로, 조회된 값이 최신 요청을 즉시 반영하지 않을 수 있습니다.
wm_attributes`는 :meth:()!attributes`의 별칭입니다.버전 3.13에서 변경: 이제 앞에 붙는
-없이 이름으로 단일 속성을 조회할 수 있으며, 키워드 인수를 사용하여 속성을 설정할 수 있습니다. return_python_dict 파라미터가 추가되었습니다.버전 3.13부터 폐지됨:
w.attributes('-alpha', 0.5)``와 같이 옵션 이름(앞에 ``-포함)과 값을 두 개의 위치 인자로 전달하여 속성을 설정하는 방식은 더 이상 권장되지 않습니다. 대신 키워드 인수를 사용하십시오.
- client(name=None)¶
윈도우 또는 세션 관리자에서 사용할 수 있도록 애플리케이션이 실행 중인 호스트의 이름을 윈도우의
WM_CLIENT_MACHINE속성에 저장합니다. 빈 문자열을 입력하면 해당 속성이 삭제됩니다. 인자가 없으면 마지막으로 설정된 이름이나 빈 문자열을 반환합니다.wm_client`는 :meth:()!client`의 별칭입니다.
- colormapwindows(*wlist)¶
개별 컬러맵을 가진 창에 대한 정보를 윈도우 관리자에게 알리는
WM_COLORMAP_WINDOWS속성을 조작합니다. wlist 가 제공되면 해당 속성을 해당 창들로 덮어씁니다(창의 순서는 컬러맵 설치 우선순위입니다). 인자가 없으면 현재 속성에 이름이 등록된 창들의 리스트를 반환합니다.wm_colormapwindows()는colormapwindows()의 별칭입니다.
- command(value=None)¶
윈도우 또는 세션 관리자에서 사용할 수 있도록 애플리케이션 실행 시 사용되는 명령어의 단어 리스트를 윈도우의
WM_COMMAND속성에 저장합니다. 빈 문자열을 입력하면 해당 속성이 삭제됩니다. 인자가 없으면 마지막으로 설정된 값이나 빈 문자열을 반환합니다.wm_command`는 :meth:()!command`의 별칭입니다.
- deiconify()¶
윈도를 매핑하여 일반(아이콘화되지 않은) 형태로 표시합니다. 윈도가 한 번도 매핑된 적이 없다면, 처음 매핑될 때 아이콘화가 해제된 상태로 나타나도록 보장합니다. Windows에서는 윈도를 위로 올리고 포커스를 부여합니다.
wm_deiconify`는 :meth:()!deiconify`의 별칭입니다.
- focusmodel(model=None)¶
윈도우의 포커스 모델을 설정하거나 조회합니다. model 은
'active'(포커스가 다른 애플리케이션에 있더라도 해당 창이나 자식 요소가 입력 포커스를 점유) 또는'passive'(윈도우 관리자가 윈도우에 포커스를 부여하도록 요청함) 중 하나입니다. 인자가 없으면 현재 모델을 반환합니다. 기본값은focus()명령이 가정하는'passive'입니다.wm_focusmodel()은focusmodel()의 별칭입니다.
- forget(window)¶
윈도우를 화면에서 언맵하여 윈도우 관리자가 더 이상 관리하지 않도록 합니다. 이 경우
Toplevel은Frame과 같이 취급되지만,-menu설정은 기억되어 위젯이 다시 관리될 때 메뉴가 나타납니다.wm_forget()은forget()의 별칭입니다.Pack.forget()과 혼동하지 마십시오.Added in version 3.3.
- frame()¶
윈도우 관리자가 윈도우를 데코레이티브 프레임으로 리페어런팅(reparenting)한 경우, 해당 프레임의 플랫폼 특정 윈도우 식별자를 반환합니다. 그렇지 않으면 윈도우 자체의 식별자를 반환합니다.
wm_frame`은 :meth:()!frame`의 별칭입니다.
- geometry(newGeometry=None)¶
창의 기하학적 정보를 설정하거나 조회합니다. newGeometry 는
=너비x높이+x+y형식을 가지며, 이 중=,너비x높이및+x+y위치는 생략할 수 있습니다. width 와 height 는 픽셀 단위(그리드 창의 경우 그리드 단위)이며,+로 시작하는 위치는 화면의 왼쪽 또는 상단 가장자리로부터,-로 시작하는 위치는 오른쪽 또는 하단 가장제에서 측정됩니다. 창의 가장자리가 해당 화면 가장자리를 벗어나 배치될 경우'200x100+-9+-8'과 같이 오프셋이 음수일 수 있습니다. 빈 문자열을 입력하면 사용자가 지정한 기하학적 정보가 취소되고 창이 기본 크기로 복구됩니다. 인수를 전달하지 않으면 현재 기하학적 정보를'200x200+10+10'과 같은 형식의 문자열로 반환합니다.wm_geometry()는geometry()의 별칭입니다.
- grid(baseWidth=None, baseHeight=None, widthInc=None, heightInc=None)¶
윈도우를 그리드 윈도우로 관리하고 그리드 단위와 픽셀 간의 관계를 정의합니다. baseWidth 와 baseHeight 는 윈도우가 내부적으로 요청한 크기에 대한 그리드 단위 수이며, widthInc 와 heightInc 는 가로 및 세로 그리드 단위의 픽셀 크기입니다. 빈 문자열을 사용하면 그리드 관리를 비활성화합니다. 인자가 없으면 네 가지 현재 값의 튜플을 반환하며, 윈도우가 그리드 방식이 아니면 빈 문자열을 반환합니다.
wm_grid()는grid()의 별칭입니다.그리드 지오메트리 관리자인
Grid.grid()와 혼동하지 마십시오.
- group(pathName=None)¶
관련된 윈도우 그룹의 리더를 설정하거나 조회합니다. pathName 은 그룹 리더의 경로 이름을 지정하며, 예를 들어 윈도우 관리자는 리더가 아이콘화될 때 그룹 내의 모든 윈도우를 언맵할 수 있습니다. 빈 문자열을 사용하면 윈도우를 모든 그룹에서 제거합니다. 인자가 없으면 현재 그룹 리더의 경로 이름 또는 빈 문자열을 반환합니다.
wm_group()은group()의 별칭입니다.
- iconbadge(badge)¶
윈도우 아이콘에 배지를 설정합니다. 이는 Dock (macOS), 작업표시줄 (Windows) 또는 앱 패널 (X11)에 표시됩니다. badge 는 양의 정수(예: 읽지 않은 메시지 수) 또는 주의가 필요함을 나타내는 느낌표(!)일 수 있으며, 빈 문자열을 사용하여 배지를 제거할 수 있습니다. X11에서는 배지가 나타나려면
::tk::icons::base_icon(window)변수가 윈도우의 아이콘 이미지로 설정되어 있어야 합니다.wm_iconbadge()는iconbadge()의 별칭입니다.Added in version 3.16.0a0 (unreleased): Tk 9.0 이상이 필요합니다.
- iconbitmap(bitmap=None, default=None)¶
윈도우 관리자가 윈도우 아이콘에 사용하는 비트맵을 설정하거나 조회합니다. bitmap*은 Tk에서 수용되는 표준 형식 중 하나의 비트맵을 지정하며, 빈 문자열은 현재 아이콘 비트맵을 취소합니다. 인자가 없으면 현재 아이콘 비트맵의 이름을 반환하며, 없을 경우 빈 문자열을 반환합니다. Windows에서는 *default 인자가 자체 아이콘이 없는 모든 최상위 윈도우에 적용되는 아이콘(예:
.ico파일)을 지정합니다.wm_iconbitmap`은 :meth:()!iconbitmap`의 별칭입니다.
- iconify()¶
윈도를 아이콘화합니다. 윈도우가 아직 처음 매핑되지 않은 경우, 나중에 매핑될 때 아이콘화된 상태로 나타나도록 설정합니다.
wm_iconify`는 :meth:()!iconify`의 별칭입니다.
- iconmask(bitmap=None)¶
아이콘의 마스크로 사용되는 비트맵을 설정하거나 조회합니다(참조:
iconbitmap()). 마스크가 0인 곳은 아이콘이 표시되지 않고, 1인 곳은 아이콘 비트맵에 해당하는 비트가 표시됩니다. 빈 문자열은 현재 마스크를 취소합니다. 인자가 없으면 현재 아이콘 마스크의 이름을 반환하며, 없을 경우 빈 문자/문자열을 반환합니다.wm_iconmask`는 :meth:()!iconmask`의 별칭입니다.
- iconname(newName=None)¶
윈도우 관리자가 윈도우 아이콘 내부에 표시하는 이름을 설정하거나 조회합니다. 인자가 없으면 현재 아이콘 이름을 반환하며, 설정되지 않은 경우 빈 문자열을 반환합니다(이 경우 윈도우 관리자는 보통 윈도우의 제목을 표시합니다).
wm_iconname`은 :meth:()!iconname`의 별칭입니다.
- iconphoto(default=False, *images)¶
images 에 제공된 하나 이상의
PhotoImage객체를 사용하여 윈도우의 제목 표시줄 아이콘을 설정합니다. 윈도우 관리자가 적절한 것을 선택할 수 있도록 서로 다른 크기(예: 16x16 및 32x32)의 여러 이미지를 제공할 수 있습니다. 이미지 데이터는 호출 시점에 스냅샷으로 가져오며, 이후의 변경 사항은 반영되지 않습니다. default 가 참이면 향후 생성되는 모든 최상위 윈도우에도 아이콘이 적용됩니다. macOS에서는 첫 번째 이미지만 사용됩니다.wm_iconphoto()는iconphoto()의 별칭입니다.Added in version 3.3.
- iconposition(x=None, y=None)¶
윈도우 아이콘이 위치해야 할 장소에 대한 힌트를 윈도우 관리자에게 설정하거나 조회합니다. 빈 문자열은 기존 힌트를 취소합니다. 인자가 없으면 두 개의 현재 값 튜플을 반환하며, 힌트가 적용되지 않은 경우 빈 문자열을 반환합니다.
wm_iconposition`은 :meth:()!iconposition`의 별칭입니다.
- iconwindow(pathName=None)¶
윈도우의 아이콘으로 사용될 윈도우를 설정하거나 조회합니다. 윈도우가 아이콘화될 때 pathName 이 아이콘 역할을 수행하도록 매핑되고, 아이콘화 해제 시 다시 언맵됩니다. 빈 문자열은 연결을 취소합니다. 인자가 없으면 현재 아이콘 윈도우의 경로 이름을 반환하며, 없을 경우 빈 문자열을 반환합니다. 모든 윈도우 관리자가 아이콘 윈도우를 지원하는 것은 아니며, X11이 아닌 플랫폼에서는 이 개념이 무의미합니다.
wm_iconwindow()는iconwindow()의 별칭입니다.
- manage(widget)¶
widget 을 제목 표시줄 등이 포함된 윈도우 매니저의 장식이 적용된 독립적인 최상위 창으로 만듭니다.
Frame,LabelFrame,Toplevel위젯만 사용할 수 있으며(tkinter.ttk버전은 허용되지 않음), 다른 유형의 위젯을 전달하면 오류가 발생합니다.wm_manage()는manage()의 별칭입니다.Added in version 3.3.
- maxsize(width=None, height=None)¶
윈도우의 허용되는 최대 크기를 픽셀(그리드 윈도우의 경우 그리드 단위)로 설정하거나 조회합니다. 윈도우 관리자는 윈도우가 width 및 height 보다 커지지 않도록 제한합니다. 인자가 없으면 현재 최대 너비와 높이의 튜플을 반환합니다. 최대 크기의 기본값은 화면 크기입니다.
wm_maxsize()는maxsize()의 별칭입니다.
- minsize(width=None, height=None)¶
윈도우의 허용되는 최소 크기를 픽셀(그리드 윈도우의 경우 그리드 단위)로 설정하거나 조회합니다. 윈도우 관리자는 윈도우가 width 및 height 보다 작지 않도록 제한합니다. 인자가 없으면 현재 최소 너비와 높이의 튜플을 반환합니다. 최소 크기의 기본값은 각 차원당 1픽셀입니다.
wm_minsize()는minsize()의 별칭입니다.
- overrideredirect(boolean=None)¶
윈도우에 대한 override-redirect 플래그를 설정하거나 조회합니다. 이 플래그가 설정되면 윈도우 관리자가 해당 윈도우를 무시하며, 데코레이티브 프레임으로 리페어런팅되지 않고 사용자가 일반적인 윈도우 관리자 컨트롤을 통해 조작할 수 없습니다. 인자가 없으면 플래그가 설정되었는지 여부를 나타내는 불리언을 반환합니다. 이 플래그는 윈도우가 처음 매핑되거나 withdrawn 상태에서 다시 매핑될 때만 확실하게 준수됩니다.
wm_overrideredirect`는 :meth:()!overrideredirect`의 별칭입니다.
- positionfrom(who=None)¶
창의 현재 위치 소스를 설정하거나 조회합니다. who 는
'program'또는'user'이며, 위치가 프로그램에 의해 요청되었는지 아니면 사용자에 의해 요청되었는지를 나타냅니다. 빈 문자열은 현재 소스를 취소합니다. 인수가 없으면 현재 소스를 반환하며, 설정된 것이 없는 경우 빈 문자열을 반환합니다. Tk는geometry()가 호출될 때'program'으로 명시적으로 설정되지 않는 한 소스를 자동으로'user'로 설정합니다.wm_positionfrom()은positionfrom()의 별칭입니다.
- protocol(name=None, func=None)¶
Register func as the handler for the window manager protocol name, an atom such as
'WM_DELETE_WINDOW','WM_SAVE_YOURSELF'or'WM_TAKE_FOCUS'; func is then called whenever the window manager sends a message of that protocol. Tk installs a defaultWM_DELETE_WINDOWhandler that destroys the window, which this method can replace. If func is an empty string, the handler is removed. With only name, return the name of its registered handler command, or an empty string if none is set (the defaultWM_DELETE_WINDOWhandler is not reported); with no arguments, return a tuple of the protocols that currently have handlers.wm_protocol()is an alias ofprotocol().
- resizable(width=None, height=None)¶
사용자가 대화식으로 창 크기를 조정할 수 있는지 제어합니다. width 와 height 는 윈도우의 너비와 높이를 변경할 수 있는지 여부를 결정하는 불리언 값입니다. 인자가 없으면 각 차원이 현재 크기 조절이 가능한지 여부를 나타내는 두 개의
0/1값으로 구성된 튜플을 반환합니다. 기본적으로 윈도우는 양방향 모두 크기 조절이 가능합니다.wm_resizable()은resizable()의 별칭입니다.
- sizefrom(who=None)¶
창의 현재 크기 소스를 설정하거나 조회합니다. who 는
'program'또는'user'이며, 크기가 프로그램에 의해 요청되었는지 아니면 사용자에 의해 요청되었는지를 나타냅니다. 빈 문자열은 현재 소스를 취소합니다. 인수가 없으면 현재 소스를 반환하며, 설정된 것이 없는 경우 빈 문자열을 반환합니다.wm_sizefrom()은sizefrom()의 별칭입니다.
- stackorder(relation=None, window=None)¶
최상위 윈도우의 적층 순서를 조회합니다. 인자가 없으면 아래에서 위로 올라가는 적층 순서에 따라 매핑된 최상위 위젯 목록을 반환하며, 이 윈도우의 최상위 자식들을 재귀적으로 포함합니다. relation 이
'isabove'또는'isbelow'이고 window 가 다른 최상위 윈도우인 경우, 이 윈도우가 적층 순서에서 각각 window 의 위 또는 아래에 있으면True를 반환하고 그렇지 않으면False를 반환합니다.wm_stackorder()은stackorder()의 별칭입니다.Added in version 3.16.0a0 (unreleased).
- state(newstate=None)¶
윈도우의 상태를 설정하거나 조회합니다. 인자가 없으면 현재 상태인
'normal''`, ``'iconic','withdrawn','icon'또는 Windows 및 macOS 전용인'zoomed'중 하나를 반환합니다.'iconic'은 아이콘화된 윈도우를 의미하며,'icon'은 다른 윈도우의 아이콘 역할을 하는 윈도우를 의미합니다(참고:iconwindow()).'icon'상태는 설정할 수 없습니다.wm_state()는state()의 별칭입니다.ttk.Widget.state와 혼동하지 마십시오.
- title(string=None)¶
윈도우 매니저가 윈도우의 타이틀 바에 표시할 윈도우 제목을 설정하거나 조회합니다. 인자가 없으면 현재 제목을 반환합니다. 기본값은 윈도우 이름입니다.
wm_title`은 :meth:()!title`의 별칭입니다.
- transient(master=None)¶
윈도우를 다른 최상위 윈도우의 경로 이름인 master 를 대신하여 작동하는 일시적(transient) 윈도우(풀다운 메뉴 또는 대화 상자 등)로 표시합니다. 빈 문자열은 일시적 상태를 해제합니다. 인자가 없으면 현재 마스터의 경로 이름을 반환하며, 설정된 것이 없으면 빈 문자열을 반환합니다. 일시적 윈도우는 마스터의 상태 변화를 반영하며 윈도우 매니저에 의해 다르게 꾸며질 수 있습니다. 윈도우를 자기 자신의 일시적 윈도우로 설정하는 것은 오류입니다.
wm_transient()은transient()의 별칭입니다.
- withdraw()¶
윈도우를 화면에서 제거하여 매핑을 해제하고 윈도우 매니저가 이를 인식하지 않도록 합니다. 윈도우가 한 번도 매핑된 적이 없다면 대신 숨김 상태로 매핑됩니다. 일부 윈도우 매니저가 윈도우 속성 변경 사항을 인식하게 하려면 윈도우를 일단 숨겼다가 다시 매핑해야 하는 경우가 있습니다(예:
deiconify()).wm_withdraw`은 :meth:()!withdraw`의 별칭입니다.
- class tkinter.Pack¶
컨테이너의 가장자리에 위젯을 배치하여 정렬하는 지오메트리 관리자입니다.
Pack믹스인은 모든 위젯(Widget을 통해)에 의해 상속되며 pack 지오메트리 관리자로 위젯을 관리하는 메서드를 제공합니다. 다음도 참조하십시오: 패커.참고
Pack,Place, 그리고Grid는 모두forget(),info(),slaves(),content(), 및propagate()라는 짧은 메서드 이름을 정의합니다. 위젯이 실제로 어떤 매니저에 의해 관리되든 상관없이, 메서드 해결 순서에서Pack과Misc가Place와Grid보다 앞서기 때문에 기본 이름들은 pack_ 매니저의 버전으로 해석됩니다. 또한configure()/config()은 위젯의 지오메트리가 아닌 옵션을 설정합니다. 특정 지오메트리 매니저에 작용하려면 명시적인pack_*,grid_*,place_*메서드를 사용하십시오(지오메트리 구성을 위해서는pack_,grid_,place_를 사용).- pack_configure(cnf={}, **kw)¶
- pack(cnf={}, **kw)¶
위젯을 컨테이너 내부에 패킹하며, 이미 패킹된 형제 요소들과 상대적인 위치에 배치합니다. 지원되는 옵션은 다음과 같습니다.
- side
컨테이너의 어느 쪽에 위젯을 패킹할지 결정합니다:
'top'(기본값),'bottom','left'또는'right'.- fill
할당된 영역을 채우도록 위젯을 확장할지 여부:
'none'(기본값),'x','y'또는'both'.- expand
위젯이 컨테이너의 여유 공간을 차지하도록 확장될지 여부(불리언, 기본값은 False).
- anchor
할당된 영역이 위젯보다 클 때 어느 위치에 위젯을 배치할지 결정합니다.
'n'또는'sw'와 같은 앵커를 사용하며, 기본값은'center'입니다.- ipadx, ipady
위젯의 좌우(ipadx) 또는 상하(ipady)에 추가되는 내부 패딩으로, 화면 거리 단위입니다(기본값
0).- padx, pady
위젯의 좌우(padx) 또는 상하(pady)에 남겨두는 외부 패딩으로, 화면 거리나 양쪽 변에 대한 두 개의 거리 쌍입니다(기본값
0).- after
동일한 컨테이너 내에서 패킹 순서상 주어진 위젯 뒤에 이 위젯을 패킹합니다.
- before
동일한 컨테이너 내에서 패킹 순서상 주어진 위젯 앞에 이 위젯을 패킹합니다.
- in_*
위젯을 패킹할 컨테이너입니다. 기본값은 부모 위젯입니다.
pack(),configure(), 그리고config`은 :meth:()!pack_configure`의 별칭입니다.
- pack_forget()¶
위젯을 언맵(unmap)하고 패킹 순서에서 제거하며, 해당 위젯의 패킹 옵션을 잊어버립니다. 나중에
pack_configure()를 사용하여 다시 패킹할 수 있습니다.forget()은pack_forget()의 별칭이나, 자체적인forget()메서드를 제공하는PanedWindow,ttk.Notebook, 그리고ttk.PanedWindow에서는 예외입니다.Wm.forget()와 혼동하지 마십시오.
- pack_info()¶
위젯의 현재 패킹 옵션이 담긴 딕셔너리를 반환합니다.
info`는 :meth:()!pack_info`의 별칭입니다.
- pack_propagate()¶
- pack_propagate(flag)
Misc.pack_propagate()와 동일하며, 이 위젯을 컨테이너로 취급하여 지오메트리 전파를 활성화하거나 비활성화합니다.propagate()는pack_propagate()의 별칭입니다.
- pack_slaves()¶
Misc.pack_slaves()와 동일하며, 이 위젯에 패킹된 위젯들의 목록을 반환합니다.slaves()는pack_slaves()의 별칭입니다.
- pack_content()¶
Misc.pack_content()와 동일합니다.content()는pack_content()의 별칭입니다.Added in version 3.15.
- class tkinter.Place¶
컨테이너 내에서 위젯을 명시적인 위치와 크기로 배치하는 지오메트리 관리자입니다.
Place믹스인은 모든 위젯(Widget을 통해)에 의해 상속됩니다.- place_configure(cnf={}, **kw)¶
- place(cnf={}, **kw)¶
위젯을 컨테이너 내부의 절대 또는 상대 위치에 배치합니다. 지원되는 옵션은 다음과 같습니다.
- x, y
위젯의 고정점(anchor point)의 절대 수평 및 수직 위치를 화면 거리 단위로 나타냅니다(기본값
0).- relx, rely
컨테이너 너비와 높이에 대한 비율로 위젯 고정점의 수평 및 수직 위치를 나타내며,
0.0은 왼쪽 또는 상단 가장자리,1.0은 오른쪽 또는 하단 가장자리를 의미합니다. 절대 옵션과 상대 옵션이 모두 제공되면 두 값이 합산됩니다.- anchor
위젯의 어느 지점을 주어진 위치에 배치할지 결정합니다.
'n'또는'se'와 같은 앵커를 사용하며, 기본값은'nw'입니다.- width, height
위젯의 절대 너비와 높이를 화면 거리 단위로 나타냅니다. 기본적으로는 위젯이 요청한 크기가 사용됩니다.
- relwidth, relheight
컨테이너 너비와 높이에 대한 비율로 위젯의 너비와 높이를 나타냅니다. 절대 옵션과 상대 옵션이 모두 제공되면 두 값이 합산됩니다.
- bordermode
컨테이너의 경계(border)가 배치에 영향을 주는 방식을 설정합니다.
'inside'(기본값)는 경계 내부 영역을 측정하고,'outside'는 경계를 포함한 영역을 측정하며,'ignore'는 공식 X 영역을 사용합니다.- in_*
위젯이 배치되는 기준 컨테이너입니다. 반드시 위젯의 부모 또는 부모의 자손이어야 하며, 기본값은 부모 위젯입니다.
place(),configure(), 그리고config`은 :meth:()!place_configure`의 별칭입니다.
- place_forget()¶
위젯을 언맵하고 배치에서 제거하며, 해당 위젯의 배치 옵션을 잊어버립니다.
- place_info()¶
위젯의 현재 배치 옵션이 담긴 딕셔너리를 반환합니다.
- place_slaves()¶
Misc.place_slaves()와 동일하며, 이 위젯에 배치된 위젯들의 목록을 반환합니다.
- place_content()¶
Misc.place_content()와 동일합니다.Added in version 3.15.
- class tkinter.Grid¶
컨테이너 내에서 행과 열의 2차원 그리드에 위젯을 배치하는 지오메트리 관리자입니다.
Grid믹스인은 모든 위젯(Widget을 통해)에 의해 상속됩니다.- grid_configure(cnf={}, **kw)¶
- grid(cnf={}, **kw)¶
위젯을 컨테이너 그리드의 셀에 배치합니다.
Wm.grid()와 혼동하지 마십시오.지원되는 옵션은 다음과 같습니다.
- row, column
위젯을 배치할 셀의 행과 열이며,
0부터 세기 시작합니다. column 은 동일한grid_configure()호출에서 이전에 배치된 위젯 다음 열(또는0)이 기본값이 되며, row 는 다음 빈 행이 기본값이 됩니다.- rowspan, columnspan
위젯이 차지할 행과 열의 수입니다(기본값
1).- sticky
셀이 위젯보다 클 때 위젯을 배치하거나 확장하는 방법입니다.
'n''`, ``'s''`, ``'e''`, ``'w''` 문자를 포함하는 문자열을 사용하여 위젯이 붙는 셀의 방향을 지정합니다. ``'n''과 `` 's'''(또는 ``'e'''와 `` 'w''')를 모두 지정하면 해당 셀의 높이(또는 너비)에 맞춰 위젯이 확장됩니다. 기본값은 ``''이며, 이 경우 요청된 크기에서 위젯을 중앙에 배치합니다.- ipadx, ipady
위젯의 좌우(ipadx) 또는 상하(ipady)에 추가되는 내부 패딩으로, 화면 거리 단위입니다(기본값
0).- padx, pady
위젯의 좌우(padx) 또는 상하(pady)에 남겨두는 외부 패딩으로, 화면 거리나 양쪽 변에 대한 두 개의 거리 쌍입니다(기본값
0).- in_*
위젯을 배치할 그리드가 있는 컨테이너입니다. 기본값은 부모 위젯입니다.
grid(),configure(), 그리고config`은 :meth:()!grid_configure`의 별칭입니다.
- grid_forget()¶
위젯을 언맵하고 그리드에서 제거하며, 해당 위젯의 그리드 옵션을 잊어버립니다.
- grid_remove()¶
위젯을 언맵하고 그리드에서 제거하지만, 다시 그리드로 배치할 때 동일한 셀에 복원되도록 그리드 옵션을 기억합니다.
- grid_info()¶
위젯의 현재 그리드 옵션이 담긴 딕셔너리를 반환합니다.
- grid_bbox(column=None, row=None, col2=None, row2=None)¶
Misc.grid_bbox()와 동일합니다.bbox()는grid_bbox()의 별칭이나, 자체적인bbox()메서드를 제공하는Canvas,Listbox,Spinbox,Text,ttk.Entry, 그리고ttk.Treeview에서는 예외입니다.
- grid_columnconfigure(index, cnf={}, **kw)¶
Misc.grid_columnconfigure()와 동일합니다: 그리드 열의 옵션(weight, minsize, pad 및 uniform)을 조회하거나 설정합니다.columnconfigure()는grid_columnconfigure()의 별칭입니다.
- grid_rowconfigure(index, cnf={}, **kw)¶
Misc.grid_rowconfigure()와 동일하며, 그리드 행의 옵션을 조회하거나 설정합니다.rowconfigure()는grid_rowconfigure()의 별칭입니다.
- grid_location(x, y)¶
Misc.grid_location()과 동일하며, x, y 픽셀이 포함된 셀의(열, 행)을 반환합니다.location()은grid_location()의 별칭입니다.
- grid_size()¶
Misc.grid_size()와 동일하며, 그리드의 크기를 나타내는(열, 행)튜플을 반환합니다.size()는grid_size()의 별칭이나, 자체적인size()메서드를 제공하는Listbox및ttk.Treeview에서는 예외입니다.
- grid_propagate()¶
- grid_propagate(flag)
Misc.grid_propagate()와 동일합니다.
- grid_slaves(row=None, column=None)¶
Misc.grid_slaves()와 동일하며, 그리드에서 관리되는 위젯들을 반환합니다. 필요에 따라 특정 row 및/또는 column 으로 제한할 수 있습니다.
- grid_content(row=None, column=None)¶
Misc.grid_content()와 동일합니다.Added in version 3.15.
- class tkinter.XView¶
Entry,Canvas,Listbox,Text, 그리고Spinbox와 같은 위젯들이 공유하는 가로 스크롤 인터페이스를 제공하는 믹스인입니다. 위젯의xview()메서드는 수평Scrollbar의 command 로 등록됩니다.- xview(*args)¶
뷰의 가로 위치를 조회하거나 변경합니다. 인자가 없으면 현재 화면에 보이는 문서 부분을 0과 1 사이의 두 분수로 나타내는
(first, last)튜플을 반환합니다. 그렇지 않으면 인수가 Tkxview위젯 명령으로 전달되며, 대개 스크롤바에 의해 생성됩니다.xview_moveto()와xview_scroll()은 더 편리한 인터페이스를 제공합니다.
- xview_moveto(fraction)¶
문서 전체 너비의 fraction 이 왼쪽 화면 바깥으로 나가도록 뷰를 조정합니다. fraction 은 0과 1 사이의 숫자입니다.
- xview_scroll(number, what)¶
뷰를 number 만큼의 단위로 왼쪽이나 오른쪽으로 이동합니다. what 은
'units'또는'pages'중 하나이며, 음수 number 는 왼쪽으로 스크롤하고 양수 number 는 오른쪽으로 스크롤합니다.
- class tkinter.YView¶
Canvas,Listbox,Text와 같은 위젯들이 공유하는 세로 스크롤 인터페이스를 제공하는 믹스인입니다. 위젯의yview()메서드는 세로 방향Scrollbar의 command 로 등록됩니다.- yview(*args)¶
뷰의 세로 위치를 조회하거나 변경합니다. 인수가 없으면 현재 화면에 보이는 문서 부분이 0과 1 사이의 두 분율인
(first, last)튜플을 반환합니다. 그 외의 경우 인수는 보통 스크롤 바에 의해 생성되는 Tkyview위젯 명령으로 전달됩니다.yview_moveto()및yview_scroll()은 더 편리한 인터페이스를 제공합니다.
- yview_moveto(fraction)¶
문서 전체 높이의 fraction 만큼이 상단 화면 밖에 위치하도록 뷰를 조정합니다. fraction 은 0과 1 사이의 숫자입니다.
- yview_scroll(number, what)¶
뷰를 number 단위만큼 위 또는 아래로 이동시킵니다. what 은
'units'또는'pages'중 하나이며, 음수 number 는 위로 스크롤하고 양수 number 는 아래로 스크롤합니다.
Toplevel 위젯¶
- class tkinter.Tk(screenName=None, baseName=None, className='Tk', useTk=True, sync=False, use=None)¶
일반적으로 응용 프로그램의 메인 창이 되는 최상위 Tk 위젯을 생성하고, 이 위젯을 위한 Tcl 인터프리터를 초기화합니다. 각 인스턴스는 고유한 Tcl 인터프리터를 가집니다.
Misc와Wm을 상속합니다.Tk 서브시스템을 초기화하지 않고 Tcl 인터프리터를 생성하려면 대신
Tcl()팩토리 함수를 사용하십시오.Tk클래스는 일반적으로 모든 기본값을 사용하여 인스턴스화됩니다. 다만 현재 다음과 같은 키워드 인수가 인식됩니다:- screenName
(문자열로 제공될 경우)
DISPLAY환경 변수를 설정합니다. (X11 전용)- baseName
프로필 파일의 이름입니다. 기본적으로 baseName 은 프로그램 이름(
sys.argv[0])에서 유도됩니다.- className
위젯 클래스의 이름입니다. 프로필 파일로 사용되며 Tcl이 호출될 때의 이름(interp 내의 argv0)으로도 사용됩니다.
- useTk
True인 경우 Tk 서브시스템을 초기화합니다.tkinter.Tcl()함수는 이 값을False로 설정합니다.- sync
True인 경우 모든 X 서버 명령을 동기적으로 실행하여 오류를 즉시 보고합니다. 디버깅 시 사용할 수 있습니다. (X11 전용)- use
응용 프로그램을 독립적인 최상위 창으로 생성하는 대신, 이를 포함할 윈도우의 id 를 지정합니다. id 는 최상위 위젯의 -use 옵션 값과 동일한 방식(즉,
winfo_id()에서 반환되는 형식)으로 지정되어야 합니다.일부 플랫폼에서는 id 가 -container 옵션이 활성화된 Tk 프레임 또는 toplevel을 가리킬 때만 올바르게 작동할 수 있음에 유의하십시오.
Tk클래스는.className.tcl및.baseName.tcl이라는 이름의 프로필 파일을 읽어 Tcl 인터프리터로 해석하고,.className.py와.baseName.py의 내용을 실행하기 위해exec()를 호출합니다. 프로필 파일의 경로는HOME환경 변수이며, 정의되어 있지 않은 경우os.curdir을 사용합니다.참고
Windows에서 Tcl 인터프리터를 생성하면(
Tk인스턴스화 또는Tcl()호출), 아직 설정되지 않은 경우 해당 프로세스의HOME환경 변수가%HOMEDRIVE%%HOMEPATH%(또는USERPROFILE, 또는c:\)로 설정됩니다. 이 작업은 Tcl에 의해 수행되며,HOME을 읽어오는 다른 코드에 영향을 미칠 수 있습니다.- tk¶
Tk를 인스턴스화하여 생성된 Tk 애플리케이션 객체입니다. 이 객체는 Tcl 인터프리터에 대한 접근을 제공합니다. 동일한Tk인스턴스에 연결된 각 위젯은 동일한tk속성 값을 가집니다.
- master¶
이 위젯을 포함하는 위젯 객체입니다.
Tk의 경우, 주 창이므로master는None입니다. master 와 parent 는 유사하며 때때로 인수 이름으로 혼용되지만,winfo_parent()를 호출하면 위젯 이름 문자열을 반환하는 반면master는 객체를 반환합니다. parent/child 는 트리 형태의 관계를 나타내고, master (또는 container/content)는 컨테이너 구조를 반영합니다.
- destroy()¶
이것과 모든 하위 위젯을 파괴하고, 메인 창의 경우 기반 Tcl 인터프리터와의 연결을 종료합니다.
- loadtk()¶
Tk 서브시스템의 로딩 및 초기화를 완료합니다. 이 작업은 인터프리터가 Tk 없이 생성된 경우(예:
Tcl()을 통해)에만 필요하며, useTk 가 참인 경우 자동으로 호출됩니다.
- readprofile(baseName, className)¶
사용자의 프로필 파일인
.className.tcl및.baseName.tcl`을 Tcl 인터프리터로 읽어 소스로 가져오고, 해당되는 :file:.{className}.py`와.baseName.py파일을 실행합니다. 이는 초기화 중에 호출되며, 위 생성자의 설명을 참조하십시오.
- report_callback_exception(exc, val, tb)¶
콜백 예외를 보고합니다. 이 함수는 Tkinter 콜백에서 예외가 발생하여 밖으로 전파될 때 호출되며, exc, val 및 tb 는
sys.exc_info()에서 반환되는 예외 유형, 값 및 트레이스백입니다. 기본 구현은sys.stderr에 트레이스백을 출력합니다. 대화 상자에 트레이스백을 표시하는 등 오류 처리를 사용자 정의하려면 이 메서드를 재정의할 수 있습니다.
- class tkinter.Toplevel(master=None, cnf={}, **kw)¶
Toplevel위젯은 최상위 창으로,Frame과 유사하지만 X 부모가 논리적 부모가 아닌 화면의 루트 윈도우라는 점이 다릅니다. 주요 목적은 대화 상자 및 기타 위젯 모음의 컨테이너로 기능하는 것이며, 가시적인 특징으로는 배경과 선택적인 3D 테두리가 있습니다. 주목할 만한 옵션에는 윈도우의 메뉴 바에Menu를 설치하는 menu 가 포함됩니다.BaseWidget및Wm을 상속하므로 toplevel은 윈도우 관리자에 의해 관리됩니다. 모든 옵션 목록은 Tktoplevel매뉴얼 페이지를 참조하십시오.
위젯 클래스¶
- class tkinter.Button(master=None, cnf={}, **kw)¶
Button위젯은 텍스트 문자열, 비트맵 또는 이미지를 표시하며 사용자가 이를 누를 때(버튼 위에서 마우스 버튼 1을 클릭하거나, 버튼이 포커스를 가진 상태에서 스페이스 키를 누르는 경우) 명령을 실행합니다.Widget`을 상속합니다. 표준 위젯 옵션 외에도 버튼은 *command*(버튼을 눌렀을 때 호출되는 콜백), *textvariable*, *state* 및 *default*와 같이 Tk ``button`매뉴얼 페이지에 기술된 옵션을 지원합니다.- invoke()¶
버튼과 연결된 명령이 있는 경우 해당 명령을 실행하고 결과를 반환하며, 없으면 빈 문자열을 반환합니다. 버튼의 상태가
disabled인 경우 이 동작은 수행되지 않습니다.
- flash()¶
활성 상태와 일반 색상을 번갈아 가며 여러 번 다시 표시하여 버튼을 깜박이게 합니다. 깜박임이 끝난 후 버튼은 메서드가 호출되었을 때와 동일한 상태(일반 또는 활성)로 유지됩니다. 버튼의 상태가
disabled인 경우 이 동작은 수행되지 않습니다.
- class tkinter.Canvas(master=None, cnf={}, **kw)¶
Canvas위젯은 구조화된 그래픽을 구현합니다. 호(arc), 선, 타원, 다각형, 사각형, 텍스트, 비트맵, 이미지 및 내장된 창과 같은 수많은 item 을 표시하며, 이들은 그리거나 이동시키고 색상을 다시 지정하거나 이벤트에 바인딩할 수 있습니다.Widget,XView및YView를 상속하여xview()와yview()로 뷰를 가로 및 세로로 스크롤할 수 있습니다. 위젯과 항목에 대한 전체 옵션 목록은 Tkcanvas매뉴얼 페이지를 참조하십시오.각 항목은 생성 시 할당되는 고유한 정수 id 와 0개 이상의 문자열 tag 를 가집니다. 태그는 정수 형태가 아닌 임의의 문자열이며, 동일한 태그를 여러 항목이 공유할 수 있어 항목 그룹화에 유용합니다. 특별한 태그
'all'은 캔버스의 모든 항목과 일치하며,'current'는 마우스 포인터 아래에 있는 가장 위의 항목과 일치합니다. 대부분의 메서드는 단일 항목을 지정하는 정수 id 또는 하나 이상의 항목을 정의하는 태그를 인자로 받는 tagOrId 를 사용합니다. Tkcanvas매뉴얼 페이지에 설명된 바와 같이, 태그는&&,||,^,!연산자와 괄호를 조합한 논리식일 수도 있습니다. 단일 항목에 작동하는 메서드에 여러 항목과 일치하는 tagOrId 가 주어지면, 일반적으로 표시 목록에서 가장 낮은 위치의 일치 항목을 사용합니다.항목은 그리기 순서를 결정하는 display list 에 유지됩니다. 목록의 뒤에 있는 항목이 앞선 항목 위에 그려집니다. 새로 생성된 항목은 목록의 맨 위에 위치하며,
tag_raise()및tag_lower()를 사용하여 순서를 변경할 수 있습니다.- create_arc(*args, **kw)¶
- create_bitmap(*args, **kw)¶
- create_image(*args, **kw)¶
- create_line(*args, **kw)¶
- create_oval(*args, **kw)¶
- create_polygon(*args, **kw)¶
- create_rectangle(*args, **kw)¶
- create_text(*args, **kw)¶
- create_window(*args, **kw)¶
해당 유형의 새 항목을 생성하고 해당 정수 id를 반환합니다. 각 메서드는
create_TYPE(coord..., **options)형식으로 호출됩니다. 앞선 위치 인수는 항목을 정의하는 좌표(개별 숫자, 단일 숫자 시퀀스 또는 좌표 쌍)를 제공하며, 키워드 인수는 항목 전용 옵션을 설정합니다. 좌표와 화면 거리는 숫자(픽셀로 해석됨) 또는 단위 접미사(밀리미터, 센티미터, 인치, 프린터 포인트에 대해 각각'm'''', ``'c','i','p')가 포함된 문자열로 제공할 수 있으나, 항상 픽셀로 저장되고 반환됩니다.항목 유형은 다음과 같습니다:
arc(포함하는 사각형의 대각선으로 마주 보는 두 모서리x1, y1, x2, y2에 의해 정의되는 타원의 일부인 호 형태 영역),bitmap(좌표x, y에 위치한 2색 비트맵),image(좌표x, y에 위치한 Tk 이미지),line(점x1, y1, ..., xn, yn을 통과하는 선 또는 곡선),oval(사각형x1, y1, x2, y2안에 내접하는 원 또는 타원),polygon(점x1, y1, ..., xn, yn을 통과하는 닫힌 다각형),rectangle(모서리x1, y1, x2, y2를 가진 사각형),text(좌표x, y에 위치한 문자열), 그리고window(window 옵션으로 지정된 좌표x, y에 임베드된 자식 위젯)입니다.대부분의 항목 유형은 공통적인 표준 항목 옵션 과 각 유형에 특화된 몇 가지 옵션을 수용합니다. 옵션 이름은 앞선 하이픈 없이 키워드 인수로 전달됩니다.
표준 항목 옵션은 다음과 같습니다.
- fill
항목의 내부를 채우거나, line 항목 또는 text 항목의 문자를 그리는 데 사용되는 색상입니다. 빈 문자열(line과 text를 제외한 모든 유형의 기본값)은 항목을 채우지 않습니다.
- outline
항목의 외곽선을 그리는 데 사용되는 색상입니다. 빈 문자열은 외곽선을 그리지 않습니다.
- width
외곽선의 너비이며, 기본값은
1.0입니다. outline 이 비어 있으면 효과가 없습니다.- dash
외곽선을 위한 점선 패턴으로, 픽셀 단위의 세그먼트 길이 시퀀스 또는
'.',',','-','_'및 공백 문자로 구성된 문자열로 제공됩니다. 빈 패턴(기본값)은 단색 외곽선을 그립니다.- dashoffset
dash 패턴 내에서 시작되는 픽셀 단위의 오프셋입니다. dash 패턴이 없으면 무시됩니다.
- stipple
항목을 채울 때 스티플(stipple) 패턴으로 사용되는 비트맵입니다. X11에서만 잘 지원됩니다.
- outlinestipple
외곽선을 그릴 때 스티플 패턴으로 사용되는 비트맵입니다. outline 이 비어 있으면 효과가 없습니다.
- offset, outlineoffset
채우기 및 외곽선 스티플 패턴의 오프셋으로,
'x,y'또는'n','se','center'와 같은 방향으로 제공됩니다. 스티플 오프셋은 X11에서만 지원됩니다.- state
이 항목의 캔버스 상태를 재정의합니다.
'normal','disabled'또는'hidden'중 하나입니다.- tags
기존 태그를 대체하여 이 항목과 연결할 단일 태그 또는 태그 시퀀스입니다.
이 옵션 중 상당수는 항목이 활성 상태(마우스 포인터 아래)이거나 비활성화된 상태일 때 기본 옵션을 재정의하는 active… 및 disabled… 변형(예: activefill, disabledfill, activewidth, disableddash, activeoutline, disabledstipple)을 가집니다.
다음 항목 유형들은 추가 옵션을 지원합니다.
arc항목의 경우:- start
3시 방향에서 반시계 방향으로 측정한 호의 각도 범위 시작점(도 단위)입니다.
- extent
start 부터 반시계 방향으로 측정한 각도 범위의 크기(도 단위)입니다.
- style
호를 그리는 방식:
'pieslice'``(기본값), ``'chord'또는'arc'.
line항목의 경우:- arrow
화살촉을 그릴 위치:
'none'``(기본값), ``'first','last'또는'both'.- arrowshape
화살촉의 모양을 설명하는 세 개의 거리 시퀀스입니다.
- capstyle
선 끝을 그리는 방식:
'butt'``(기본값), ``'projecting'또는'round'.- joinstyle
선 정점이 그려지는 방식:
'round'``(기본값), ``'bevel'또는'miter'.- smooth
부드럽게 처리하는 방식입니다. 부드러운 처리를 하지 않으려면 거짓(false) 값(기본값)을 사용하고, 선을 곡선으로 그리려면
'true'/'bezier'또는'raw'를 선택합니다.- splinesteps
smooth 이 활성화되었을 때 각 스플라인을 근사하는 선 분절의 수입니다.
polygon항목에 대해:- joinstyle, smooth, splinesteps
line항목과 마찬가지로, 폴리곤의 외곽선에 적용됩니다.
text항목에 대해:- text
표시할 문자열입니다. 줄 바꿈 문자는 새 줄을 시작합니다.
- font
텍스트에 사용되는 글꼴입니다.
- justify
줄의 정렬 방식입니다:
'left'``(기본값), ``'right'또는'center'.- anchor
기준점에 대한 텍스트의 위치이며, 기본값은
'center'입니다.- width
최대 줄 길이입니다. 0이 아니면 공간(space)에서 줄 바꿈이 발생합니다.
- angle
텍스트가 배치된 지점을 중심으로 반시계 방향으로 회전할 각도입니다. 범위는
0.0에서360.0이며 기본값은0.0입니다.- underline
The index of a character to underline, or
-1for none.
bitmap항목에 대해:- bitmap
표시할 비트맵입니다.
- anchor
특정 지점 대비 비트맵이 위치하는 방식입니다.
- background, foreground
비트맵의
0및1픽셀에 사용되는 색상입니다. 빈 background*는 ``0`` 픽셀을 투명하게 만듭니다. 두 옵션 모두 *active…*와 *disabled… 변형이 있으며, bitmap*은 *activebitmap*과 *disabledbitmap 변형이 있습니다.
image항목에 대해:- image
표시할 Tk 이미지이며, 이전에 이미지 프로토콜로 생성되어야 합니다.
- anchor
특정 지점 대비 이미지가 위치하는 방식입니다.
두 옵션 모두 활성 및 비활성 상태에서 사용되는 active… 및 disabled… 변형(activeimage, disabledimage)을 가집니다.
window항목에 대해:- window
임베드할 위젯입니다. 반드시 캔버스의 자식이나 조상 중 하나여야 하며, 최상위 창(top-level window)이어서는 안 됩니다.
- anchor
특정 지점 대비 창이 위치하는 방식입니다.
- width, height
창에 할당할 크기입니다. 0인 경우(기본값) 창은 요청된 크기를 부여받습니다.
oval및rectangle항목에는 유형별 전용 옵션이 없으며, 표준 항목 옵션만 사용합니다.참고
Tk 8.6에서
text항목을 위한 angle 옵션이 추가되었고, Tk 9.0에서 underline 옵션이 추가되었습니다.
- coords(tagOrId)¶
- coords(tagOrId, coordList, /)
- coords(tagOrId, /, *coordList)
항목의 좌표를 조회하거나 수정합니다. tagOrId 만 제공하면 tagOrId 에 해당하는 항목(여러 개가 일치하는 경우 첫 번째 항목)의 부동 소수점 좌표 리스트를 반환합니다. 새 좌표를 입력하면 해당 항목의 좌표를 그것으로 교체합니다.
create_*메서드와 마찬가지로, 좌표는 별개의 숫자, 단일 시퀀스 또는 좌표 쌍으로 제공될 수 있습니다. 반환되는 좌표는 지정된 단위와 관계없이 항상 픽셀 단위입니다. 사각형(rectangle), 타원(oval), 호(arc)의 경우 왼쪽, 위쪽, 오른쪽, 아래쪽 순서로 정렬됩니다.버전 3.12에서 변경: 인자가 평탄화되었습니다. 좌표는
create_*메서드와 마찬가지로 별개의 인자, 단일 시퀀스 또는 쌍으로 그룹화된 형태로 제공될 수 있습니다.
- move(tagOrId, xAmount, yAmount, /)¶
캔버스 좌표 공간에서 tagOrId 로 지정된 각 항목의 모든 x-좌표에 xAmount 를 더하고, 모든 y-좌변에 yAmount 를 더하여 이동시킵니다.
- moveto(tagOrId, x='', y='')¶
tagOrId 로 지정된 항목들 중 가장 아래에 위치한 일치 항목의 첫 번째 좌표 쌍(경계 상자의 왼쪽 위 모서리)이 (x, y) 위치에 오도록 이동시킵니다. x 또는 y 가 빈 문자열인 경우 해당 좌표는 변경되지 않습니다. 모든 일치하는 항목은 서로에 대한 상대적 위치를 유지합니다.
Added in version 3.8.
- scale(tagOrId, xOrigin, yOrigin, xScale, yScale, /)¶
캔버스 좌표 공간에서 tagOrId 로 지정된 모든 항목의 좌표를 재조정합니다. 각 x-좌표는 xOrigin 으로부터의 거리가 xScale 배만큼 변하도록 조정되며, 각 y-좌표는 yOrigin 으로부터의 거리가 yScale 배만큼 변하도록 조정됩니다(배수가
1.0인 경우 좌표는 변경되지 않습니다).
- rotate(tagOrId, xOrigin, yOrigin, angle, /)¶
캔버스 좌표 공간에서 tagOrId 로 지정된 모든 항목의 좌표를 원점(xOrigin, yOrigin)을 기준으로 반시계 방향으로 angle 도만큼 회전시킵니다. angle 이 음수이면 시계 방향으로 회전합니다.
Added in version 3.16.0a0 (unreleased).
- delete(*tagOrIds)¶
tagOrIds 인자로 제공된 각 항목을 삭제합니다.
- dchars(tagOrId, first, /)¶
- dchars(tagOrId, first, last, /)
tagOrId 로 지정된 각 항목에서 first 부터 last 까지(포함)의 범위에 있는 문자(텍스트 항목의 경우) 또는 좌표(라인 및 폴리곤 항목의 경우)를 삭제합니다. last 는 기본값으로 first 입니다. 인덱싱을 지원하지 않는 항목은 이 작업을 수행하지 않습니다.
- insert(tagOrId, beforeThis, string, /)¶
tagOrId 로 지정된 각 항목에서 인덱스가 beforeThis 인 문자 또는 좌표 바로 앞에 string 을 삽입합니다. 라인 및 폴리곤 항목의 경우 string 은 유효한 좌표 시퀀스여야 합니다.
- rchars(tagOrId, first, last, string, /)¶
tagOrId 로 지정된 각 항목에서 first 부터 last 까지(포함)의 범위에 있는 문자(텍스트 항목의 경우) 또는 좌표(라인 및 폴리곤 항목의 경우)를 string 으로 교체합니다. 라인 및 폴리곤 항목의 경우 string 은 유효한 좌표 시퀀스여야 합니다. 인덱싱을 지원하지 않는 항목은 이 작업을 수행하지 않습니다.
Added in version 3.16.0a0 (unreleased).
- itemcget(tagOrId, option)¶
tagOrId 로 지정된 항목(여러 개가 일치하는 경우 가장 아래에 있는 항목)의 설정 옵션 option 의 현재 값을 반환합니다. 이는
cget()과 유사하지만 개별 항목에 적용됩니다.
- itemconfigure(tagOrId, cnf=None, **kw)¶
tagOrId 로 지정된 항목의 설정 옵션을 조회하거나 수정합니다. 이는
configure()와 유사하지만 캔버스 전체가 아닌 개별 항목에 적용됩니다. 옵션이 없는 경우 첫 번째 일치하는 항목의 현재 옵션을 설명하는 딕셔너리를 반환하며, 그렇지 않으면 모든 일치하는 항목에 제공된 옵션을 설정합니다. 허용되는 옵션은 해당create_*메서드에서 수락되는 것들입니다.itemconfig()은itemconfigure()의 별칭입니다.
- type(tagOrId)¶
tagOrId 로 지정된 항목(여러 개가 일치하는 경우 첫 번째 항목)의 유형을
'rectangle'' 또는 `` 'text''와 같은 형태로 반환하며, *tagOrId* 가 어떤 항목과도 일치하지 않으면 ``None을 반환합니다.
- gettags(tagOrId, /)¶
tagOrId 로 지정된 항목(여러 개가 일치하는 경우 표시 목록 순서에서 첫 번째 항목)과 관련된 태그의 튜플을 반환합니다. 일치하는 항목이 없거나 항목에 태그가 없는 경우 빈 튜플을 반환합니다.
- dtag(tagOrId, /)¶
- dtag(tagOrId, tagToDelete, /)
tagOrId*로 지정된 각 항목에서 태그 *tagToDelete*(기본값은 *tagOrId)를 제거합니다. 해당 태그가 없는 항목은 영향을 받지 않습니다.
- addtag(newtag, searchSpec, /, *args)¶
searchSpec (및 추가 args)에 의해 선택된 각 항목에 태그 newtag 를 추가합니다. searchSpec 은
'above'' 또는 `` 'all'', ``'below'', `` 'closest'', ``'enclosed'', `` 'overlapping'', ``'withtag'' 중 하나이며, 아래의 `` addtag_ *메서드들은 각각의 형태를 지원하는 편리한 래퍼입니다.
- addtag_above(newtag, tagOrId)¶
표시 목록에서 tagOrId 바로 위(다음)에 있는 항목에 태그 newtag 를 추가합니다.
- addtag_all(newtag)¶
캔버스의 모든 항목에 태그 newtag 를 추가합니다.
- addtag_below(newtag, tagOrId)¶
표시 목록에서 tagOrId 바로 아래(이전)에 있는 항목에 태그 newtag 를 추가합니다.
- addtag_closest(newtag, x, y, halo=None, start=None)¶
점 (x, y)에 가장 가까운 항목에 태그 newtag*를 추가합니다. *halo*가 제공되면 해당 거리 내에 있는 모든 항목이 겹치는 것으로 간주됩니다. *start*(태그 또는 ID)가 제공되면, 표시 목록에서 *start 아래에 위치한 가장 위쪽의 가장 가까운 항목을 선택하며, 이는 모든 가장 가까운 항목을 순차적으로 확인하는 데 사용할 수 있습니다.
- addtag_enclosed(newtag, x1, y1, x2, y2)¶
x1 <= x2 및 y1 <= y2 인 사각형 (x1, y1, x2, y2) 내에 완전히 포함된 모든 항목에 태그 newtag 를 추가합니다.
- addtag_overlapping(newtag, x1, y1, x2, y2)¶
x1 <= x2 및 y1 <= y2 인 사각형 (x1, y1, x2, y2)과 겹치거나 그 안에 포함된 모든 항목에 태그 newtag 를 추가합니다.
- addtag_withtag(newtag, tagOrId)¶
tagOrId 로 지정된 모든 항목에 태그 newtag 를 추가합니다.
- find(searchSpec, /, *args)¶
searchSpec*(및 추가 *args)에 의해 선택된 모든 항목의 ID를 쌓임 순서(가장 아래에 있는 항목부터)로 튜플로 반환합니다. 검색 사양은
addtag`에서 수락되는 형식 중 하나입니다. 아래의 ``find_*`()메서드들은 이를 더 편리하게 사용할 수 있도록 만든 래퍼입니다.
- find_above(tagOrId)¶
표시 목록에서 tagOrId 바로 위에 있는 항목의 ID를 포함하는 튜플을 반환합니다.
- find_all()¶
캔버스 내 모든 항목의 ID를 쌓임 순서로 튜플로 반환합니다.
- find_below(tagOrId)¶
표시 목록에서 tagOrId 바로 아래에 있는 항목의 ID를 포함하는 튜플을 반환합니다.
- find_closest(x, y, halo=None, start=None)¶
점 (x, y)에 가장 가까운 항목의 ID를 포함하는 튜플을 반환합니다. halo 와 start 는
addtag_closest()에서 해석되는 것과 동일하게 처리됩니다.
- find_enclosed(x1, y1, x2, y2)¶
사각형 (x1, y1, x2, y2) 내에 완전히 포함된 모든 항목의 ID를 튜플로 반환합니다.
- find_overlapping(x1, y1, x2, y2)¶
사각형 (x1, y1, x2, y2)와 겹치거나 그 안에 포함된 모든 항목의 ID를 튜플로 반환합니다.
- find_withtag(tagOrId)¶
tagOrId 로 지정된 모든 항목의 ID를 튜플로 반환합니다.
- tag_raise(tagOrId, aboveThis=None, /)¶
tagOrId 로 지정된 모든 항목을 표시 목록에서 aboveThis 가 제공한 항목 바로 위 또는 aboveThis 가 생략된 경우 표시 목록의 맨 위로 이동시킵니다. 여러 항목이 이동될 때 그들의 상대적 순서는 유지됩니다. 이는 임베디드 창 항목에는 영향을 미치지 않으며, 해당 항목의 쌓임 순서는 대신
Misc.tkraise()및Misc.lower()에 의해 제어됩니다.lift()및tkraise()는tag_raise()의 별칭입니다.
- tag_lower(tagOrId, belowThis=None, /)¶
tagOrId 로 지정된 모든 항목을 표시 목록에서 belowThis 가 제공한 항목 바로 아래 또는 belowThis 가 생략된 경우 표시 목록의 맨 아래로 이동시킵니다. 여러 항목이 이동될 때 그들의 상대적 순서는 유지됩니다. 이는 임베디드 창 항목에는 영향을 미치지 않습니다.
lower()는tag_lower()의 별칭입니다.참고
Canvas에서tkraise()/lift()및lower()는 캔버스 항목들을 재정렬하며, 위젯 자체를 재정렬하는 상속된Misc.tkraise()/Misc.lift()및Misc.lower()메서드를 가립니다(해당 메서드들은 사용 가능하지 않습니다).
- tag_bind(tagOrId, sequence=None, func=None, add=None)¶
tagOrId 로 지정된 모든 항목에 대해 특정 이벤트 sequence 가 발생할 때마다 콜백 func 이 호출되도록 바인딩합니다. 이는
Widget.bind와 유사하지만 전체 위젯 대신 캔버스 항목에 작동하며, 마우스, 키보드 및 가상 이벤트만 바인딩할 수 있습니다. 마우스 이벤트는 현재 아이템으로, 키보드 이벤트는 포커스된 아이템(참조:focus())으로 전송됩니다. add 가 true이면 기존의 동일한 시퀀스에 대한 바인딩을 교체하는 대신 새로운 바인딩이 추가됩니다. 반환되는 값은 바인딩된 함수의 식별자로,tag_unbind()에 전달할 수 있습니다.
- tag_unbind(tagOrId, sequence, funcid=None)¶
tagOrId 로 지정된 모든 항목에 대해 이벤트 sequence 의 바인딩을 제거합니다. funcid 가 제공된 경우, 해당 콜백(
tag_bind()에서 반환된 값)만 해제되고 등록이 취소됩니다.버전 3.13에서 변경: funcid 가 제공된 경우, 해당 콜백만 해제됩니다.
- bbox(tagOrId, /, *tagOrIds)¶
tagOrId 및 추가 tagOrId 들로 지정된 모든 항목을 포함하는 대략적인 경계 상자(픽셀 단위)를 4-튜플
(x1, y1, x2, y2)로 반환합니다. 결과는 실제 경계 상자보다 몇 픽셀 정도 크게 측정될 수 있습니다. 일치하는 항목이 없거나 일치하는 항목에 표시할 내용이 없는 경우None을 반환합니다.이것은 상속된
Misc.bbox()를 가립니다. 그리드 경계 상자의 경우grid_bbox()를 사용하십시오.
- canvasx(screenx, gridspacing=None)¶
윈도우 x-좌표 screenx*가 주어지면 해당 위치에 표시되는 캔버스 x-좌표를 반환합니다. *gridspacing*이 제공되면 결과는 가장 가까운 *gridspacing 단위의 배수로 반올림됩니다.
- canvasy(screeny, gridspacing=None)¶
윈도우 y-좌표 screeny*가 주어지면 해당 위치에 표시되는 캔버스 y-좌표를 반환합니다. *gridspacing*이 제공되면 결과는 가장 가까운 *gridspacing 단위의 배수로 반올림됩니다.
- focus()¶
- focus(tagOrId, /)
tagOrId 를 사용하여 삽입 커서를 지원하는 첫 번째 tagOrId 항목에 캔버스 키보드 포커스를 설정합니다. 해당 항목이 없으면 포커스는 변경되지 않습니다. tagOrId 가 빈 문자열이면 어떤 항목도 포커스를 갖지 않도록 포커스를 초기화합니다. 인수가 없으면 현재 포커스를 가진 항목의 ID를 반환하며, 아무것도 없으면 빈 문자열을 반환합니다. 항목은 해당 항목이 포커스 상태이고 해당 캔버스가 입력 포커스를 가질 때에만 삽입 커서를 표시합니다.
이 메서드는 상속된
Misc.focus()를 가립니다. 위젯 자체에 포커스를 설정하려면focus_set()을 사용하십시오.
- icursor(tagOrId, index, /)¶
tagOrId 로 지정된 항목의 삽입 커서를 index 가 가리키는 문자의 바로 앞에 위치하도록 설정합니다. 삽입 커서를 지원하지 않는 항목은 영향을 받지 않습니다. 커서는 항목이 포커스 상태일 때만 표시되지만, 위치는 언제든지 설정될 수 있습니다.
- index(tagOrId, index, /)¶
index (위치의 텍스트 설명; 텍스트 항목의 경우 문자의 인덱스, 라인 및 폴리곤 항목의 경우 좌표의 인덱스)에 해당하는 tagOrId 내의 숫자 인덱스를 정수로 반환합니다. tagOrId 가 여러 항목과 일치하는 경우, 인덱싱을 지원하는 첫 번째 항목이 사용됩니다.
- select_adjust(tagOrId, index)¶
tagOrId 내에서 index 와 가장 가까운 선택 영역의 끝을 index 위치로 조정하고, 다른 쪽 끝을 향후
select_to()호출을 위한 앵커 포인트로 설정합니다. 현재 tagOrId 에 선택 영역이 없는 경우 이 메서드는select_to()와 동일하게 작동합니다.
- select_clear()¶
선택 영역이 이 캔버스 내에 있으면 삭제하고, 그렇지 않으면 아무 작업도 수행하지 않습니다.
- select_from(tagOrId, index)¶
tagOrId 로 지정된 항목 내에서 index 가 가리키는 문자의 바로 앞에 선택 앵커 포인트를 설정합니다. 이는 선택 영역 자체를 변경하지 않으며, 향후
select_to()호출을 위한 고정된 끝 지점을 설정합니다.
- select_item()¶
Return the id of the item that holds the selection, or
Noneif the selection is not in this canvas. Unlikefind()and thefind_*methods, this returns the id as a string rather than an integer.
- select_to(tagOrId, index)¶
선택 영역을 선택 앵커 포인트와 index (포함) 사이의 tagOrId 문자들로 설정합니다. 앵커 포인트는 가장 최근에 호출된
select_adjust()또는select_from()에 의해 설정된 위치입니다.
- scan_mark(x, y)¶
향후
scan_dragto()호출에 사용할 x, y 및 현재 뷰를 기록합니다. 이 기능은 일반적으로 위젯에서 마우스 버튼 클릭과 바인딩됩니다.
- scan_dragto(x, y, gain=10)¶
x, y 와 마지막
scan_mark()호출에 전달된 좌표 사이의 차이에 gain 을 곱한 만큼 캔버스를 스크롤합니다. 이 기능은 일반적으로 위젯의 마우스 이동 이벤트에 바인딩되어, 윈도우를 통해 캔버스를 고속으로 드래그하는 효과를 냅니다.
- postscript(cnf={}, **kw)¶
캔버스 전체 또는 일부에 대한 PostScript(Encapsulated PostScript, 버전 3.0) 표현을 생성합니다. file 또는 channel 옵션이 제공되면 해당 위치에 PostScript를 쓰고 빈 문자열을 반환하며, 그렇지 않으면 문자열로 반환합니다. 기본적으로는 현재 윈도우에서 보이는 영역만 생성되므로, 일반적으로
update()를 먼저 호출하거나 width 및 height 옵션을 사용해야 합니다. 지원되는 옵션은 colormap, colormode, file, fontmap, height, pageanchor, pageheight, pagewidth, pagex, pagey, rotate, width, x 및 y 가 있습니다.
- class tkinter.Checkbutton(master=None, cnf={}, **kw)¶
Checkbutton위젯은 사각형 표시기와 함께 텍스트 문자열, 비트맵 또는 이미지를 표시하며, 클릭 시 불리언 선택 상태를 전환합니다. 이 위젯은 단순 버튼의 모든 동작을 수행하며, 추가로 선택이 가능합니다. 선택되면 표시기에 체크 표시가 그려지고 관련 변수가onvalue로 설정되며, 해제되면 표시기가 비어 있고 변수가offvalue로 설정됩니다.Widget을 상속받습니다. 표준 위젯 옵션 외에도 checkbutton은 Tkcheckbutton매뉴얼 페이지에 기술된 variable, onvalue, offvalue 및 command 와 같은 옵션을 지원합니다.- invoke()¶
사용자가 마우스로 체크 버튼을 클릭했을 때와 동일하게 동작합니다: 버튼의 선택 상태를 전환하고, 관련 명령이 있으면 실행합니다. 명령 결과가 있으면 이를 반환하며, 매핑된 명령이 없으면 빈 문자열을 반환합니다. 체크 버튼의 상태가
disabled인 경우 이 작업은 수행되지 않습니다.
- select()¶
체크 버튼을 선택하고 관련 변수를
onvalue로 설정합니다.
- deselect()¶
체크 버튼을 해제하고 관련 변수를
offvalue로 설정합니다.
- toggle()¶
버튼의 선택 상태를 전환하고, 이를 다시 표시하며 새로운 상태를 반영하도록 관련 변수를 수정합니다.
- flash()¶
체크 버튼을 여러 번 다시 표시하며 활성색과 기본색 사이를 교차시켜 깜박이게 합니다. 플래시가 끝난 후 체크 버튼은 메서드가 호출될 당시의 상태(일반 또는 활성) 그대로 유지됩니다. 체크 버튼의 상태가
disabled인 경우 이 작업은 수행되지 않습니다.
- class tkinter.Entry(master=None, cnf={}, **kw)¶
Entry위젯은 한 줄의 텍스트를 표시하고 사용자가 이를 편집할 수 있게 합니다.Widget과XView를 상속받으며, 엔트리가 윈도우 크기보다 긴 문자열을 담을 수 있으므로xview()를 통한 가로 스크롤을 지원합니다.In addition to the standard widget options, an entry accepts the options documented in the Tk
entrymanual page. Notable ones are textvariable (the name of a variable kept in sync with the entry’s contents), show (if set, each character is displayed as the given character rather than its true value, useful for password entry), validate and validatecommand (which together let a callback accept or reject edits), and state (one of'normal','disabled'or'readonly').많은 메서드가 엔트리 문자열 내의 문자를 선택하는 index 인수를 받습니다. Tk
entry매뉴얼 페이지에 설명된 대로, index 는 숫자(0부터 시작),'insert'(삽입 커서 바로 다음 문구),'end'(마지막 문장 바로 뒤),'anchor'(선택 앵커 포인트),'sel.first'및'sel.last'(선택 영역의 끝), 또는@x(윈도우 내 x-픽셀 좌표 x 를 포함하는 문자)일 수 있습니다. 범위를 벗어난 인덱스는 가장 가까운 유효한 값으로 반올림됩니다.- delete(first, last=None)¶
first 인덱스부터 last 인덱스 직전까지의 문자들을 삭제합니다. last 가 생략되면 first 에 위치한 단일 문자만 삭제됩니다.
- get()¶
엔트리의 현재 문자열을 반환합니다.
- insert(index, string)¶
index 가 가리키는 문자의 바로 앞에 string 을 삽입합니다.
- icursor(index)¶
index 가 가리키는 문자의 바로 앞에 삽입 커서가 표시되도록 합니다.
- index(index)¶
index 에 해당하는 숫자 인덱스를 반환합니다.
- selection_adjust(index)¶
index 가 가리키는 문자와 가장 가까운 선택 영역의 끝을 찾아 해당 끝이 index 에 위치하도록 조정합니다(포함하되 그 이상 나가지 않음). 다른 쪽 끝은 향후
selection_to()호출을 위한 앵커 포인트가 됩니다. 엔트리에 선택 영역이 없는 경우, index 와 가장 최근의 앵커 포인트 사이(양쪽 포함)에 새로운 영역이 생성됩니다.select_adjust()는selection_adjust()의 별칭입니다.
- selection_clear()¶
현재 이 위젯에 선택 영역이 있으면 삭제합니다. 선택 영역이 이 위젯 내에 없으면 아무 일도 일어나지 않습니다.
select_clear`는 :meth:()!selection_clear`의 별칭입니다.참고
이 메서드는 X 선택을 해제하는 상속된
Misc.selection_clear()를 가립니다. 해당 방법은Entry에서 사용할 수 없습니다.
- selection_from(index)¶
선택 영역을 변경하지 않고, index 가 가리키는 문자의 바로 앞에 선택 앵커 포인트를 설정합니다.
select_from()은selection_from()의 별칭입니다.
- selection_present()¶
엔트리에 선택된 문자가 있으면
True를 반환하고, 없으면False를 반환합니다.select_present()는selection_present()의 별칭입니다.
- selection_range(start, end)¶
start 에 의해 인덱싱된 문자부터 end 바로 앞의 문자로 끝나는 범위까지를 선택 영역으로 설정합니다. 만약 end 가 start 와 동일하거나 그 이전 문자를 가리키면 선택이 해제됩니다.
select_range()는selection_range()의 별칭입니다.
- selection_to(index)¶
앵커 포인트와 index 사이를 선택 영역으로 설정합니다: index 가 앵커 포인트보다 앞에 있으면 index 부터 앵커를 제외한 범위까지, index 가 뒤에 있으면 앵커부터 index 를 제외한 범위까지 선택됩니다. 두 위치가 일치하면 아무 일도 일어나지 않습니다. 앵커 포인트는 가장 최근의
selection_from()또는selection_adjust()호출로 설정된 위치입니다. 엔트리에 선택 영역이 없는 경우 최신 앵커 포인트를 사용하여 새 영역을 생성합니다.select_to()는selection_to()의 별칭입니다.
- scan_mark(x)¶
향후
scan_dragto()호출에 사용하기 위해 엔트리 창의 x 와 현재 뷰를 기록합니다. 이 기능은 보통 위젯에서 마우스 버튼 클릭과 바인딩됩니다.
- scan_dragto(x)¶
x 와 마지막
scan_mark()호출에 제공된 x 사이의 차이를 계산하고, 그 차이의 10배만큼 뷰를 왼쪽이나 오른쪽으로 조정합니다. 이 기능은 주로 마우스 이동 이벤트와 연동되어 윈도우 내에서 엔트리를 빠르게 드래그하는 효과를 생성합니다.
- validate()¶
validate 옵션에 명시된 조건과 관계없이 validatecommand 옵션의 명령을 강제로 평가하고, 해당 값이 유효한지 여부를 반환합니다.
Added in version 3.16.0a0 (unreleased).
- class tkinter.Frame(master=None, cnf={}, **kw)¶
Frame위젯은 단순한 컨테이너입니다. 주요 목적은 복잡한 창 레이아웃의 간격 조절이나 컨테이너 역할을 하는 것이며, 기능으로는 배경색과 프레임이 튀어나오거나 들어간 것처럼 보이게 하는 선택적 3D 테두리만 제공됩니다.Widget`을 상력받습니다. 전체 옵션 목록은 Tk ``frame`매뉴얼 페이지를 참조하십시오.
- class tkinter.Label(master=None, cnf={}, **kw)¶
Label위젯은 상호작용이 불가능한 텍스트 문자열, 비트맵 또는 이미지를 표시합니다. 표시될 텍스트는 text 옵션으로 설정하거나 textvariable*을 통해 변수와 연결할 수 있으며, *image 옵션을 사용하여 이미지를 표시할 수 있습니다. 모든 텍스트는 단일 글꼴로 구성되어야 하지만 여러 줄을 차지할 수 있으며, underline 옵션으로 특정 문자에 밑줄을 그을 수 있습니다.Widget`을 상속받습니다. 전체 옵션 목록은 Tk ``label`매뉴얼 페이지를 참조하십시오.
- class tkinter.LabelFrame(master=None, cnf={}, **kw)¶
LabelFrame위젯은Frame의 기능을 갖추고 라벨을 표시할 수 있는 컨테이너입니다. 라벨 텍스트는 text 옵션으로 설정하고 labelanchor 로 위치를 조정하거나, labelwidget 옵션을 통해 임의의 위젯을 라벨로 사용할 수 있습니다.Widget을 상속받습니다. 전체 옵션 목록은 Tklabelframe매뉴얼 페이지를 참조하십시오.
- class tkinter.Listbox(master=None, cnf={}, **kw)¶
Listbox위젯은 여러 줄의 텍스트 항목을 목록으로 표시하며, 사용자는 하나 이상의 항목을 선택할 수 있습니다. 선택 방식은 selectmode 옵션에 따라 결정됩니다. 옵션은browse(기본값; 최대 한 개, 마우스로 드래그 가능),single(최대 한 개),multiple(임의의 수, 각각 토글 가능), 또는extended(불연속적인 범위 포함 임의의 수, 클릭 후 드래그하여 선택) 등이 있습니다.Widget,XView및YView를 상속받으므로,xview()및yview()를 통해 가로 및 세로 스크롤이 가능합니다. 전체 옵션 목록은 Tklistbox매뉴얼 페이지를 참조하십시오.Many of the methods take an index argument identifying a particular item. As described in the Tk
listboxmanual page, index may be a numeric index (counting from 0 at the top),'active'(the item with the location cursor, set withactivate()),'anchor'(the selection anchor, set withselection_anchor()),'end'(the last item, or forindex()andinsert()the position just after it), or@x,y(the item covering pixel coordinates x, y in the listbox window). Arguments named first and last are indices of the same forms.- insert(index, *elements)¶
index 가 가리키는 항목 바로 앞에 주어진 elements 를 새 항목으로 삽입합니다. index 가
'end'인 경우, 새 항목들이 목록 끝에 추가됩니다.
- delete(first, last=None)¶
first 부터 last 까지(포함)의 범위에 있는 항목들을 삭제합니다. last 가 생략되면 기본값으로 first 를 사용하여 단일 항목만 삭제됩니다.
- get(first, last=None)¶
last 이 생략된 경우, first 가 가리키는 항목의 내용을 반환하며, 해당 항목이 존재하지 않으면 빈 문자열을 반환합니다. last 가 제공된 경우, first 부터 last 까지(포함) 범위 내에 있는 모든 항목의 튜플을 반환합니다.
- size()¶
리스트박스에 있는 전체 항목 수를 반환합니다.
이 메서드는 상속된
Misc.size()를 가립니다. 그리드 크기에 대해서는grid_size()를 사용하십시오.
- index(index)¶
index 에 해당하는 정수 인덱스 값을 반환하며, index 가 범위를 벗어나면
None을 반환합니다. index 가'end'인 경우 결과는 리스트박스의 항목 수(마지막 항목의 인덱스가 아님)입니다.
- bbox(index)¶
index 로 지정된 항목의 텍스트에 대한 경계 상자(위젯 기준의 픽셀 단위)를 나타내는 튜플
(x, y, width, height)을 반환합니다. 해당 항목이 화면에 보이지 않거나 index 가 존재하지 않는 경우None을 반환하며, 항목이 일부만 보이는 경우에도 결과는 보이지 않는 부분을 포함한 전체 영역을 제공합니다.이것은 상속된
Misc.bbox()를 가립니다. 그리드 경계 상자의 경우grid_bbox()를 사용하십시오.
- nearest(y)¶
리스트박스 창 내의 y 좌표가 주어지면, 해당 y 좌표에 가장 가까운 가시적 항목의 인덱스를 반환합니다.
- see(index)¶
index 로 지정된 항목이 보이도록 뷰를 조정합니다. 해당 항목이 이미 보이는 경우 이 메서드는 아무런 영향을 주지 않으며, 창의 가장자리에 가까운 경우 리스트박스가 해당 항목을 해당 가장자리에 표시할 만큼만 스크롤되며, 그 외의 경우에는 리스트박스가 해당 항목을 중앙에 배치하도록 스크롤됩니다.
- activate(index)¶
활성 항목을 index*로 지정된 항목으로 설정합니다. *index*가 항목 범위를 벗어나는 경우 가장 가까운 항목이 대신 활성화됩니다. 위젯이 입력 포커스를 가질 때 활성 항목은 *activestyle 옵션에 따라 그려지며, 해당 인덱스는
'active'인덱스로 가져올 수 있습니다.
- curselection()¶
현재 선택된 모든 항목의 숫자 인덱스를 포함하는 튜플을 반환하며, 선택된 항목이 없으면 빈 튜플을 반환합니다.
- selection_anchor(index)¶
Set the selection anchor to the item given by index. If index refers to a non-existent item, the closest item is used. The selection anchor is the end of the selection that is fixed while dragging out a selection with the mouse, and may afterwards be referred to with the
'anchor'index.select_anchor()is an alias ofselection_anchor().
- selection_clear(first, last=None)¶
first 부터 last 까지의 범위에 포함된 항목 중 선택된 항목을 해제합니다. 이 범위를 벗어난 항목의 선택 상태는 변경되지 않습니다.
select_clear()은selection_clear()의 별칭입니다.참고
이 메서드는 X 선택을 해제하는 상속된
Misc.selection_clear()를 가립니다. 해당 메서드는Listbox에서 사용할 수 없습니다.
- selection_includes(index)¶
index 로 지정된 항목이 현재 선택되어 있으면
True를, 그렇지 않으면False를 반환합니다.select_includes()는selection_includes()의 별칭입니다.
- selection_set(first, last=None)¶
first 부터 last 까지의 범위에 포함된 모든 항목을 선택하며, 이 범위를 벗어난 항목의 선택 상태는 영향을 주지 않습니다.
select_set()은selection_set()의 별칭입니다.
- itemcget(index, option)¶
index 로 지정된 항목에 대한 구성 옵션 option 의 현재 값을 반환합니다.
- itemconfigure(index, cnf=None, **kw)¶
index 로 지정된 항목의 구성 옵션을 조회하거나 수정합니다. 이 기능은 리스트박스 전체가 아닌 개별 항목에 적용된다는 점을 제외하고는
configure()와 동일하게 작동합니다. 옵션이 없는 경우 해당 항목의 현재 옵션을 기술하는 딕셔너리를 반환하며, 그렇지 않으면 제공된 옵션을 설정합니다. 지원되는 항목 옵션은 background, foreground, selectbackground, selectforeground 입니다.itemconfig()은itemconfigure()의 별칭입니다.
- scan_mark(x, y)¶
향후
scan_dragto()호출에 사용할 x, y 및 현재 뷰를 기록합니다. 이 기능은 일반적으로 위젯에서 마우스 버튼 클릭과 바인딩됩니다.
- scan_dragto(x, y)¶
x, y 와 마지막
scan_mark()호출 시 전달된 좌표 간의 차이의 10배만큼 리스트박스를 스크롤합니다. 이는 일반적으로 위젯에서 마우스 이동 이벤트에 바인딩되어, 창을 통해 리스트를 빠른 속도로 드래그하는 효과를 생성합니다.
- class tkinter.Menu(master=None, cnf={}, **kw)¶
Menu위젯은 항목의 열을 표시하며, 각 항목은 명령(command), 체크 버튼(checkbutton), 라디오 버튼(radiobutton), 캐스케이드(cascade, 연관된 서브메뉴를 게시함) 또는 구분선(separator)이 될 수 있습니다. 메뉴는 최상위 창의 메뉴바, 캐스케이드 항목이나 메뉴 버튼에서 나오는 풀다운 메뉴, 그리고 팝업 메뉴로 사용됩니다.Widget을 상속받습니다.많은 항목 메서드는 조작할 항목을 선택하는 index 인수를 받습니다. Tk
menu매뉴얼 페이지에 설명된 바와 같이, index 는 숫자 인덱스(상단부터 0으로 카운트),'active'(현재 활성 항목),'end'또는'last'(가장 아래 항목),'none'(아무런 항목도 없음, Tcl에서는{}로 표기됨),@y(메뉴 창에서 y 좌표 y 를 포함하는 항목), 또는 위에서부터 아래로 항목의 레이블과 일치하는 패턴이 될 수 있습니다.- add(itemType, cnf={}, **kw)¶
메뉴 하단에 새 항목을 추가합니다. itemType 은
'command','cascade','checkbutton','radiobutton'또는'separator'중 하나이며 새로운 항목의 유형을 결정하며, 나머지 옵션은 이를 구성합니다.add_command(),add_cascade(),add_checkbutton(),add_radiobutton()및add_separator()편의 메서드는 해당 itemType 과 함께 이 메서드를 호출합니다.항목은 다음 옵션으로 구성되지만, 모든 옵션이 모든 항목 유형에 적용되는 것은 아닙니다(구분선은 어떤 옵션도 수용하지 않음):
- label
항목에 표시할 텍스트입니다.
- command
항목이 호출될 때 실행할 함수입니다(명령, 체크 버튼 및 라디오 버튼 항목).
- accelerator
가속키 입력을 안내하기 위해 항목 오른쪽에 표시되는 문자열입니다. 이 문자열 자체가 바인딩을 생성하지는 않습니다.
- underline
키보드 탐색을 위해 레이블에서 밑줄을 그을 문자의 인덱스입니다.
- state
'normal','active'또는'disabled'중 하나입니다.- image
텍스트 레이블 대신 또는 함께 표시할 이미지입니다.
- compound
텍스트를 기준으로 이미지를 표시할 위치입니다:
'none'``(기본값), ``'text','image','top','bottom','left'또는'right'.- bitmap
텍스트 레이블 대신 표시할 비트맵입니다.
- font
텍스트에 사용할 글꼴입니다.
- background, foreground
항목의 기본 상태에서의 배경 및 전경 색상입니다(macOS에서는 무시됨).
- activebackground, activeforeground
항목이 활성화되었을 때 사용되는 배경 및 전경 색상입니다(macOS에서는 무시됨).
- columnbreak
참(True)인 경우, 항목이 이전 항목 아래에 배치되는 대신 새로운 열을 시작합니다.
- hidemargin
참(True)인 경우 항목 주변의 표준 여백이 생략됩니다. 이는 메뉴가 팔레트로 사용될 때 유용합니다.
- menu
캐스케이드 항목에 의해 게시되는 서브메뉴입니다. 이 메뉴의 자식이어야 합니다.
- variable
체크 버튼 또는 라디오 버튼 항목과 연관된 변수입니다.
- onvalue, offvalue
체크 버튼 항목이 선택되거나 해제될 때 variable 에 저장되는 값입니다.
- value
라디오 버튼 항목이 선택될 때 variable 에 저장되는 값입니다.
- indicatoron
체크 버튼 또는 라디오 버튼 항목의 표시기(indicator)를 표시할지 여부입니다.
- selectcolor
체크 버튼 또는 라디오 버튼 항목이 선택되었을 때 표시기의 색상입니다.
- selectimage
체크 버튼 또는 라디오 버튼 항목이 선택되고 image 도 제공되었을 때 표시되는 이미지입니다.
- add_cascade(cnf={}, **kw)¶
메뉴 하단에 새로운 캐스케이드 항목을 추가합니다. 캐스케이드 항목은 menu 옵션으로 제공되는 관련 서브메뉴를 가지며, 이는 반드시 이 메뉴의 자식이어야 합니다. 항목이 게시되면 그 옆에 서브메뉴가 함께 표시됩니다.
- add_checkbutton(cnf={}, **kw)¶
메뉴 하단에 새로운 체크 버튼 항목을 추가합니다. 호출 시, 체크 버튼 항목은 onvalue 와 offvalue 사이를 전환하며 그 결과를 관련 variable 에 저장하고, 선택 여부를 보여주는 표시기를 나타냅니다.
- add_command(cnf={}, **kw)¶
메뉴 하단에 새로운 명령 항목을 추가합니다. 명령 항목은 버튼과 유사하게 작동하며, 호출될 때 command 옵션으로 제공된 콜백이 실행됩니다.
- add_radiobutton(cnf={}, **kw)¶
메뉴 하단에 새로운 라디오 버튼 항목을 추가합니다. 동일한 variable 을 공유하는 라디오 버튼 항목들은 그룹을 형성하며, 한 번에 하나만 선택할 수 있습니다. 항목을 선택하면 해당 항목의 value 가 변수에 저장됩니다.
- add_separator(cnf={}, **kw)¶
메뉴 하단에 구분선을 추가합니다. 구분선은 가로 구분선으로 표시되며 활성화하거나 호출할 수 없습니다.
- insert(index, itemType, cnf={}, **kw)¶
add()와 동일하지만, 새 항목을 메뉴 끝에 추가하는 대신 index 로 지정된 항목 바로 앞에 삽입합니다. itemType 은'command','cascade','checkbutton','radiobutton'또는'separator'중 하나입니다.insert_command(),insert_cascade(),insert_checkbutton(),insert_radiobutton()및insert_separator()편의 메서드는 해당 itemType 을 사용하여 이 메서드를 호출합니다.
- insert_cascade(index, cnf={}, **kw)¶
index 로 지정된 항목 앞에 새로운 캐스케이드 항목을 삽입합니다(참조:
add_cascade()).
- insert_checkbutton(index, cnf={}, **kw)¶
index 로 지정된 항목 앞에 새로운 체크 버튼 항목을 삽입합니다(참조:
add_checkbutton()).
- insert_command(index, cnf={}, **kw)¶
index 로 지정된 항목 앞에 새로운 명령 항목을 삽입합니다(참조:
add_command()).
- insert_radiobutton(index, cnf={}, **kw)¶
index 로 지정된 항목 앞에 새로운 라디오 버튼 항목을 삽입합니다(참조:
add_radiobutton()).
- insert_separator(index, cnf={}, **kw)¶
index 로 지정된 항목 앞에 구분선을 삽입합니다(참조:
add_separator()).
- delete(index1, index2=None)¶
index1*과 *index2 사이의 모든 메뉴 항목을 삭제합니다(양 끝 포함). index2*가 생략된 경우 *index1*로 간주하여 단일 항목이 삭제됩니다. 떼어내기(tear-off) 항목을 삭제하려는 시도는 무시되며, 대신 *tearoff 옵션을 변경하여 제거해야 합니다.
- entrycget(index, option)¶
index 로 지정된 항목에 대한 구성 옵션 option 의 현재 값을 반환합니다.
- entryconfigure(index, cnf=None, **kw)¶
index 로 지정된 항목의 구성 옵션을 조회하거나 수정합니다. 이 기능은 메뉴 전체가 아닌 개별 항목에 적용된다는 점을 제외하고는
configure()와 동일하게 작동합니다. 옵션이 없는 경우 해당 항목의 현재 옵션을 기술하는 딕셔너리를 반환하며, 그렇지 않으면 제공된 옵션을 설정합니다. 지원되는 옵션은 해당 항목 유형에 대해add()가 수용하는 옵션들입니다.entryconfig()은entryconfigure()의 별칭입니다.
- index(index)¶
index 에 해당하는 숫자 인덱스를 반환하며, index 가 어떤 항목도 선택하지 않는 경우
None을 반환합니다.
- type(index)¶
index 로 지정된 항목의 유형을 반환합니다:
'command','cascade','checkbutton','radiobutton','separator'또는'tearoff'(떼어내기 항목인 경우) 중 하나입니다.
- activate(index)¶
index 로 지정된 항목을 활성 항목으로 설정하고, 해당 항목을 활성 색상으로 다시 표시하며 이전의 활성 항목을 비활성화합니다. index 가 아무것도 선택하지 않거나 선택된 항목이 비활성화된 경우, 메뉴는 활성 항목이 없는 상태가 됩니다.
- invoke(index)¶
index 로 지정된 항목이 클릭된 것처럼 동작을 수행합니다. 항목이 비활성화된 경우 아무 일도 일어나지 않습니다. 항목에 command 가 연결되어 있는 경우 해당 명령의 결과가 반환되며, 그렇지 않은 경우에는 빈 문자열이 반환됩니다.
- post(x, y)¶
루트 윈도우 좌표 x*와 *y 위치에 메뉴를 화면에 표시하며, 전체 메뉴가 보이도록 필요에 따라 좌표를 조정합니다. postcommand 옵션이 지정된 경우 메뉴가 게시되기 전에 해당 명령이 평가됩니다.
- postcascade(index)¶
index 로 지정된 캐스케이드 항목과 연관된 서브메뉴를 게시하며, 이전에 게시된 모든 서브메뉴는 해제됩니다. index 가 캐스케이드 항목을 가리키지 않거나 메뉴 자체가 게시되지 않은 경우 아무런 영향도 주지 않습니다.
Added in version 3.16.0a0 (unreleased).
- tk_popup(x, y, entry='')¶
루트 윈도우 좌표 x 와 y 에서 메뉴를 팝업으로 게시합니다. entry 가 주어지면 해당 항목이 포인터 바로 아래에 위치하도록 메뉴의 위치를 조정합니다.
- unpost()¶
메뉴를 제거하여 더 이상 표시되지 않도록 하며, 게시된 하위 수준의 캐스케이드 서브메뉴도 해제합니다. 메뉴의 해제를 자체적으로 관리하는 Windows와 macOS에서는 아무런 영향이 없습니다.
- xposition(index)¶
index 로 지정된 항목의 왼쪽 끝 픽셀에 해당하는 메뉴 창 내의 x 좌표를 반환합니다.
Added in version 3.3.
- yposition(index)¶
index 로 지정된 항목의 위쪽 끝 픽셀에 해당하는 메뉴 창 내의 y 좌표를 반환합니다.
- class tkinter.Menubutton(master=None, cnf={}, **kw)¶
Menubutton위젯은 텍스트 문자열, 비트맵 또는 이미지를 표시하며 사용자가 클릭할 때 menu 옵션으로 지정된 연관Menu를 게시합니다.Label과 마찬가지로 text, textvariable 또는 image 를 표시할 수 있으며, direction 옵션은 버튼을 기준으로 메뉴가 나타날 위치를 제어합니다.Widget을 상속받습니다. 전체 옵션 목록은 Tkmenubutton매뉴얼 페이지를 참조하십시오.
- class tkinter.Message(master=None, cnf={}, **kw)¶
Message위젯은 text 옵션에 의해 제공되거나 textvariable 을 통해 변수에 연결된 상호작용이 없는 텍스트 문자열을 표시합니다.Label과 달리, 주어진 종횡비로 출력하기 위해 문자열을 여러 줄로 나누어 표시하며 단어 경계에서 줄바꿈을 수행하고, 텍스트를 왼쪽, 가운데 또는 오른쪽으로 정렬할 수 있습니다.Widget을 상허받습니다. 전체 옵션 목록은 Tkmessage매뉴얼 페이지를 참조하십시오.
- class tkinter.OptionMenu(master, variable, value, *values, **kwargs)¶
Menubutton의 헬퍼 서브클래스로서 상호 배타적인 선택 항목들을 팝업 메뉴로 표시합니다. variable 은 선택 사항과 동기화되는Variable이며, value 는 초기 선택 값이고, values 는 나머지 메뉴 항목들입니다. 키워드 인자 command 에는 선택된 값과 함께 호출되는 콜백을 부여할 수 있으며, 키워드 인자 name 은 Tk 위젯 이름을 설정합니다. 기타 키워드 인자는 기본Menubutton으로 전달되어 기본 외관을 덮어쓸 수 있습니다.- destroy()¶
위젯을 파괴하고 연관된 팝업 메뉴도 정리합니다.
버전 3.14에서 변경: name 키워드 인자 지원이 추가되었습니다.
버전 3.16.0a0 (unreleased)에서 변경: 기타
Menubutton옵션을 이제 키워드 인자로 전달할 수 있습니다.
- class tkinter.PanedWindow(master=None, cnf={}, **kw)¶
PanedWindow은 여러 개의 자식 panes 를 행(Orientation이'horizontal'일 때) 또는 열(Orientation이'vertical'일 때)로 배치하는 지오메트리 관리자 위젯입니다. 각 pane은 하나의 위젯을 보유하며, 인접한 두 pane 사이에는 이동 가능한 sash 가 있어 사용자가 마우스로 드래그하여 양쪽의 위젯 크기를 조정할 수 있습니다.Widget을 상속받습니다.orient 옵션은 레이아웃 방향을 선택하고, sashwidth 는 각 sash의 너비를 설정하며, sashrelief 는 sash의 relief를 설정합니다. showhandle 이 True이면 사용자가 잡아서 드래그할 수 있는 작은 핸들이 각 sash에 그려집니다. 전체 옵션 목록은 Tk
panedwindow매뉴얼 페이지를 참조하십시오.- add(child, **kw)¶
child 를 기존의 모든 pane 뒤에 위치하는 새로운 pane으로 panedwindow에 추가합니다. 키워드 인수는 child 에 대한 pane별 관리 옵션을 지정하며, 이들은
paneconfigure()에서 허용되는 모든 옵션이 될 수 있습니다.
- remove(child)¶
panedwindow에서 child 를 포함하는 pane을 제거합니다. child 에 대한 모든 지오메트리 관리 옵션이 무시됩니다.
forget()은remove()의 별칭입니다. 이 기능은 상속된 geometry-manager인forget()을 가립니다. 위젯 자체를 매니저에서 제거하려면pack_forget(),grid_forget()또는place_forget()을 사용하십시오.
- panes()¶
panedwindow에 의해 관리되는 위젯들의 튜플을 각 pane에 하나씩 순서대로 반환합니다.
- panecget(child, option)¶
child 를 포함하는 pane의 관리 옵션 option 에 대한 현재 값을 반환합니다. option 은
paneconfigure()에서 허용되는 모든 값이 될 수 있습니다.
- paneconfigure(tagOrId, cnf=None, **kw)¶
tagOrId 위젯을 포함하는 pane의 관리 옵션을 조회하거나 수정합니다. 옵션이 없으면 pane에서 사용할 수 있는 모든 옵션에 대한 설명을 담은 딕셔너리를 반환하고, 문자열로 된 단일 옵션 이름이 주어지면 해당 옵션에 대한 설명을 반환하며, 그 외의 경우에는 주어진 옵션들을 설정합니다. 지원되는 옵션에는 after 및 before (다른 관리형 창 앞이나 뒤에 pane을 삽입), height 및 width (테두리를 포함한 창의 외부 치수), minsize (pane 차원에서의 최소 크기), padx 및 pady (창의 각 측면에 남길 추가 공간), sticky (문자
n,s,e,w의 조합을 사용하여 너무 큰 pane 내에서 창의 위치를 지정하거나 늘림), hide (pane을 목록에 유지하면서 숨김), 그리고 stretch (여분 공간을 pane에 할당하는 방식:'always','first','last','middle'또는'never'중 하나)가 포함됩니다.paneconfig()는paneconfigure()의 별칭입니다.
- identify(x, y)¶
윈도우 좌표계에서 x 와 y 로 주어진 점 아래에 있는 panedwindow 컴포넌트를 식별합니다. 해당 지점이 sash 또는 sash 핸드 위에 있으면 결과는 sash 또는 핸스의 인덱스와 그것이 sash인지 혹은 handle인지를 나타내는 단어를 포함하는 두 요소의 튜플(예:
(0, 'sash')또는(2, 'handle'))입니다. 점이 panedwindow의 다른 부분 위에 있다면 결과는 빈 문자열입니다.
- sash(*args)¶
panedwindow 내 sash의 위치를 조회하거나 변경합니다. 이 기능은 Tk
sash서브명령어의 얇은 래퍼이며, 일반적으로는 편리한 메서드인sash_coord(),sash_mark()및sash_place()를 사용하는 것이 권장됩니다.
- sash_coord(index)¶
index 로 주어진 sash의 현재 x 및 y 좌표 쌍을 반환합니다. index 는 0과 panedwindow 내 pane 개수에서 1을 뺀 값 사이의 정수여야 합니다. 반환되는 좌표는 해당 sash를 포함하는 영역의 왼쪽 상단 모서리 좌표입니다.
- sash_mark(index)¶
sash를 이동시키기 위해 나중에 수행할 sash 드래그 작업과 함께 사용될 index 로 지정된 sash의 현재 마우스 위치를 기록합니다.
- sash_place(index, x, y)¶
index*로 주어진 sash를 *x 및 y 좌표에 배치합니다.
- proxy(*args)¶
비투명 리사이징 중 sash를 드래그할 때 표시되는 “고스트” sash인 sash proxy의 위치를 조회하거나 변경합니다. 이 기능은 Tk
proxy서브명령어의 얇은 래퍼이며, 일반적으로는 편리한 메서드인proxy_coord(),proxy_forget()및proxy_place()를 사용하는 것이 권장됩니다.
- proxy_coord()¶
가장 최근의 proxy 위치에 대한 x 및 y 좌표가 포함된 튜플을 반환합니다.
- proxy_forget()¶
표시에서 proxy를 제거합니다.
- proxy_place(x, y)¶
proxy를 x 및 y 좌표에 배치합니다.
- class tkinter.Radiobutton(master=None, cnf={}, **kw)¶
Radiobutton위젯은 다이아몬드 또는 원형 표시기와 함께 텍스트 문자열, 비트맵 또는 이미지를 표시하며 여러 선택지 중 하나를 선택합니다. 이 위젯은 단순 버튼의 모든 동작을 수행하며 추가로 선택 가능한 기능을 갖춥니다. 일반적으로 여러 radiobutton이 하나의 variable 을 공유하며, 하나를 선택하면 해당 변수가 그 radiobutton의 value 로 설정됩니다. 또한 각 radiobutton은 해당 변수를 모니터링하여 변수가 변경될 때 자동으로 자신을 선택하거나 해제합니다.Widget을 상속합니다. 표준 위젯 옵션 외에도 variable, value, command 와 같이 Tkradiobutton매뉴얼 페이지에 설명된 옵션을 지원합니다.- invoke()¶
사용자가 마우스로 radiobutton을 누른 것과 동일한 동작을 수행합니다: 버튼을 선택하고 관련 명령이 있다면 실행합니다. 명령이 연결되어 있지 않으면 빈 문자열을 반환합니다. radiobutton의 상태가
disabled인 경우 이 동작은 무시됩니다.
- select()¶
radiobutton을 선택하고 관련된 변수를 이 위젯에 해당하는 값으로 설정합니다.
- deselect()¶
radiobutton 선택을 해제하고 관련 변수를 빈 문자열로 설정합니다. 이 radiobutton이 현재 선택된 상태가 아니었다면 아무런 영향도 주지 않습니다.
- flash()¶
radiobutton을 여러 번 다시 표시하며 활성 색상과 일반 색상을 번갈아 가며 반짝이게 합니다. 깜박임이 끝나면 radiobutton은 메서드 호출 시와 동일한 일반 또는 활성 상태를 유지합니다. radiobutton의 상태가
disabled인 경우 이 동작은 무시됩니다.
- class tkinter.Scale(master=None, cnf={}, **kw)¶
Scale위젯은 사용자가 trough를 따라 슬라이더를 움직여 수치 값을 선택할 수 있게 합니다. 세로 또는 가로 방향으로 설정할 수 있으며, 선택적으로 라벨과 현재 값을 표시할 수 있습니다.Widget을 상속합니다.In addition to the standard widget options, a scale accepts the options documented in the Tk
scalemanual page, such as from_, to, resolution, orient, tickinterval, variable and command. As elsewhere intkinter, the leading-of the Tk option name is dropped; from is spelledfrom_becausefromis a Python keyword.정수가 아닌 resolution 을 사용하는 경우, numeric values and the locale 를 참조하십시오.
- get()¶
scale의 현재 값을 반환합니다. 결과는 scale의 resolution 이 정수를 생성하는 경우 정수로, 그렇지 않으면 실수(float)로 반환됩니다.
- set(value)¶
scale을 value 로 설정하고 그에 맞춰 슬라이더를 이동시킵니다. scale이 비활성화된 경우 아무런 영향도 주지 않습니다.
- coords(value=None)¶
value 에 해당하는 trough의 중심선상 지점의 픽셀 좌표를 위젯 기준의 튜플
(x, y)로 반환합니다. value 가 생략된 경우 scale의 현재 값이 사용됩니다.
- identify(x, y)¶
x, y 픽셀 좌표에 위치한 scale의 부분을 설명하는 문자열을 반환합니다:
'slider','trough1'(슬라이더 위쪽 또는 왼쪽의 trough 부분),'trough2'(슬라이더 아래쪽 또는 오른쪽의 trough 부분). 해당 지점이 어떤 요소 위에도 있지 않은 경우 빈 문자열을 반환합니다.
- class tkinter.Scrollbar(master=None, cnf={}, **kw)¶
Scrollbar위젯은 슬라이더와 두 개의 화살표를 표시하여 사용자가Listbox,Text,Canvas또는Entry와 같은 관련 위젯을 스크롤할 수 있게 합니다. 스크롤되는 위젯의 xscrollcommand 또는 yscrollcommand 옵션을 스크롤 막대의set()메서드로 설정하고, 스크롤 막대의 command 옵션을 해당 위젯의xview()또는yview()메서드로 설정하여 연결합니다.Widget을 상속합니다.- get()¶
현재 스크롤 막대 설정을 현재 표시되는 문서의 영역을 설명하는 두 개의 분수(0과 1 사이 값) 튜플
(first, last)로 반환합니다. 이 값은 마지막으로set()에 전달된 값입니다.
- set(first, last)¶
스크롤 막대를 설정합니다. first 와 last 는 관련 문서의 표시되는 부분이 시작되고 끝나는 위치를 나타내는 0과 1 사이의 분수입니다. 이 메서드는 일반적으로 스크롤되는 위젯의 xscrollcommand 또는 yscrollcommand 로 등록되어 해당 위젯에 의해 호출됩니다.
- activate(index=None)¶
index (arrow1, slider, arrow2 중 하나)를 활성 상태로 표시하고, activebackground 및 activerelief 옵션에 따라 렌더링합니다. index 가 생략된 경우 현재 활성화된 요소의 이름을 반환하며, 활성화된 요소가 없으면
None을 반환합니다.버전 3.5에서 변경: index 인자가 이제 선택 사항입니다.
- delta(deltax, deltay)¶
슬라이더를 가로 방향으로 deltax 픽셀(수평 스크롤 막대의 경우) 또는 세로 방향으로 deltay 픽셀(수직 스크롤 막대의 경우) 이동할 때 발생하는 스크롤 막대 설정의 비율 변화량을 나타내는 부동 소수점(float)을 반환합니다.
- fraction(x, y)¶
x, y 픽셀 좌표에 위치한 점이 trough 내에서 어디에 있는지 나타내는 0과 1 사이의 부동 소수점(float)을 반환합니다. 0은 trough의 위쪽 또는 왼쪽, 1은 아래쪽 또는 오른쪽을 의미합니다.
- identify(x, y)¶
x, y 픽셀 좌표 아래에 있는 요소의 이름(예:
'arrow1')을 반환하며, 해당 지점이 스크롤 막개의 어떤 요소에도 속하지 않으면 빈 문자열을 반환합니다.
- class tkinter.Spinbox(master=None, cnf={}, **kw)¶
Spinbox위젯은 값을 직접 편집하는 것 외에도 한 쌍의 위/아래 화살표 버튼을 통해 일정 범위 내의 값들을 단계적으로 이동하며 선택할 수 있는Entry와 유사한 위젯입니다. 대상값들은 from_, to, increment 옵션에 의해 주어지는 숫자 범위이거나, values 옵션에 의한 명시적인 문자열 목록(범위보다 우선함)일 수 있습니다. 화살표가 작동할 때마다 (존재하는 경우) command 콜백이 호출됩니다. wrap 옵션은 범위를 벗어날 때 반대편으로 되돌아올지 여부를 제심하며, format 옵션은 숫자 값의 형식을 지정하고, validate 옵션은 입력된 텍스트의 유효성 검사를 활성화합니다.Widget과XView를 상속합니다.정수가 아닌 increment 를 사용하는 경우, numeric values and the locale 를 참조하십시오.
많은 메서드가 spinbox 문자열 내의 문자를 식별하는 index 인수를 받습니다. Tk
spinbox매뉴얼 페이지에 설명된 대로, index 는 수치 인덱스(0부터 시작),'anchor'(선택 기준점),'end'(마지막 문자 바로 뒤),'insert'(삽입 커서 바로 다음 문자),'sel.first'또는'sel.last'(선택 영역의 끝), 또는@x(윈도우 내 픽셀 x-좌표 x 가 포함된 위치)일 수 있습니다.- get()¶
spinbox의 문자열을 반환합니다.
- insert(index, s)¶
index 로 지정된 문자 바로 앞에 문자열 s 를 삽입합니다.
- delete(first, last=None)¶
spinbox에서 하나 이상의 문자를 삭제합니다. first*는 삭제할 첫 번째 문자의 인덱스이며, *last*는 삭제할 마지막 문자 바로 다음 위치의 인덱스입니다. *last*가 생략된 경우 *first 위치의 단일 문자가 삭제됩니다.
- icursor(index)¶
index 가 가리키는 문자의 바로 앞에 삽입 커서가 표시되도록 합니다.
- index(index)¶
index 에 해당하는 수치 인덱스를 문자열로 반환합니다.
- bbox(index)¶
index 로 지정된 문자의 경계 상자(bounding box)를 설명하는 네 개의 정수 튜플
(x, y, width, height)을 반환합니다. x 와 y 는 위젯 대비 해당 문자의 좌상단 모서리 픽셀 좌표이며, width 와 height 는 픽셀 단위의 크기입니다. 경계 상자는 윈도우의 가시 영역 외부를 포함할 수 있습니다.이것은 상속된
Misc.bbox()를 가립니다. 그리드 경계 상자의 경우grid_bbox()를 사용하십시오.
- identify(x, y)¶
x, y 픽셀 좌표에 있는 윈도우 요소의 이름을 반환합니다. 결과는
'buttondown','buttonup','entry'또는'none'중 하나입니다.
- invoke(element)¶
element*(*buttonup 또는 buttondown)로 주어진 스핀 버튼을 작동시켜 관련 동작을 실행합니다.
- scan(*args)¶
뷰의 빠른 드래그를 구현하는 데 사용되는 Tk
scan위젯 서브명령어의 얇은 래퍼입니다:scan('mark', x)는 x 와 현재 뷰를 기록하고,scan('dragto', x)는 해당 마크를 기준으로 뷰를 조정합니다.scan_mark()및scan_dragto()메서드가 이 두 형태를 래핑합니다.
- scan_mark(x)¶
추후
scan_dragto()호출 시 사용하기 위해 spinbox 윈도우 내의 x 와 현재 뷰를 기록합니다. 이는 일반적으로 위젯에서의 마우스 버튼 클릭과 관련이 있습니다.
- scan_dragto(x)¶
x 와 마지막
scan_mark()호출 시 전달된 x 의 차이에 10을 곱한 만큼 뷰를 조정합니다. 이는 일반적으로 마우스 이동 이벤트와 연관되며, 사용자가 스핀 박스를 윈도우에서 고속으로 드래그하는 효과를 생성합니다.
- selection(*args)¶
spinbox 내에서 선택 영역을 조정하는 데 사용되는 Tk
selection위젯 서브명령어의 얇은 래퍼입니다. 첫 번째 인수에 따라 여러 형태가 있습니다:selection('adjust', index),selection('clear'),selection('element', ?elem?),1selection('from', index),selection('present'),selection('range', start, end)및selection('to', index).selection_adjust(),selection_clear(),selection_element(),selection_from(),selection_present(),selection_range()및selection_to()메서드가 이러한 형태들을 래핑합니다.
- selection_adjust(index)¶
index 로 지정된 문자와 가장 가까운 선택 영역의 끝을 찾아 해당 끝을 index 위치로 조정합니다(10: 포함하되 index 를 초과하지 않음). 다른 쪽 끝은 향후
selection_to()호출을 위한 기준점(anchor point)이 됩니다. 현재 선택 영역이 spinbox 내에 없는 경우, index 와 가장 최근의 기준점 사이의 문자들을 포함하는 새 선택 영역을 생성합니다.
- selection_clear()¶
현재 이 위젯 내에 있는 경우 선택 영역을 지웁니다. 선택 영역이 이 위어 내에 없으면 해당 메서드는 아무런 영향도 주지 않습니다.
참고
이 기능은 X 선택을 지우는 상속된
Misc.selection_clear()를 가립니다. 해당 메서드는Spinbox에서 사용할 수 없습니다.
- selection_element(element=None)¶
현재 선택된 요소를 설정하거나 가져옵니다. element*(*buttonup, buttondown 또는 none 중 하나)가 주어지면 해당 스핀 버튼이 선택되고 눌린 상태로 표시됩니다. 그렇지 않으면 현재 선택된 요소의 이름이 반환됩니다.
- selection_from(index)¶
선택 영역 자체를 변경하지 않고, 선택 기준점(anchor point)을 index 로 지정된 문자 바로 앞으로 설정합니다.
Added in version 3.8.
- selection_present()¶
스핀박스에 선택된 문자가 있으면
True를 반환하고, 없으면False를 반환합니다.Added in version 3.8.
- selection_range(start, end)¶
start 인덱스의 문자로 시작하여 end 바로 앞의 문자로 끝나는 구간을 선택으로 설정합니다. 만약 end 가 start 와 동일한 문자이거나 그보다 앞선 문자를 가리키면 선택 영역이 해제됩니다.
Added in version 3.8.
- selection_to(index)¶
index 와 앵커 포인트(anchor point) 사이의 범위를 선택으로 설정합니다. index 가 앵커 포인트보다 앞에 있으면 index 부터 앵커 포인트를 포함하지 않고 그 직전까지 선택되며, 뒤에 있으면 앵커 포인트부터 index 를 포함하지 않고 그 직전까지 선택됩니다. 두 위치가 같으면 아무 일도 일어나지 않습니다. 앵커 포인트는 가장 최근의
selection_from()또는selection_adjust()호출로 설정된 지점입니다. 선택 영역이 이 위젯 내에 없는 경우, 가장 최근의 앵커 포인트를 사용하여 새로운 선택 영역이 생성됩니다.Added in version 3.8.
- validate()¶
validate 옵션에 명시된 조건과 관계없이 validatecommand 옵션의 명령을 강제로 평가하고, 해당 값이 유효한지 여부를 반환합니다.
Added in version 3.16.0a0 (unreleased).
- class tkinter.Text(master=None, cnf={}, **kw)¶
Text위젯은 여러 줄의 텍스트를 표시하고 편집합니다. 텍스트의 일부는 태그 로 스타일을 지정할 수 있고, 특정 위치에는 플로팅 마크 를 추가할 수 있으며, 임의의 이미지나 다른 위젯을 텍스트에 삽입할 수 있습니다. 또한 이 위젯은 무제한의 실행 취소/다시 실행 기능을 제공하며 동일한 데이터를 공유하는 피어(peer) 위젯을 지원합니다.Widget,XView,YView를 상속하므로xview()및yview()를 사용하여 화면을 가로 및 세로로 스크롤할 수 있습니다. 전체 옵션 목록은 Tktext매뉴얼 페이지를 참조하십시오.대부분의 메서드는 텍스트 내의 위치를 식별하는 하나 이상의 index 인수를 받습니다. Tk
text매뉴얼 페이지에 설명된 대로, 인덱스는 기본(base)과 선택적으로 하나 이상의 수정자(modifier)로 구성된 문자열입니다. 기본은'line.char'``(줄 *line*, 문자 *char*; 줄은 1부터, 문자는 0부터 카운트하며 ``'line.end'``는 해당 줄의 끝에 있는 개행을 의미함), ``'end'``(마지막 개행 바로 뒤의 위치), 마크 이름, ``'tag.first'또는'tag.last'``(*tag*으로 태그된 첫 번째 문자 또는 마지막 그런 문자의 바로 뒤 위치), 삽입된 이미지나 창의 이름, 또는 ``@x,y``(위젯 내에서 픽셀 좌표 *x*, *y*를 포함하는 문자)가 될 수 있습니다. ``'+5 chars','-3 lines','linestart','lineend','wordstart'또는'wordend'``와 같은 수정자는 기본값에 대하여 상대적으로 인덱스를 조정하며, 여러 개의 수정자를 결합하여 왼쪽에서 오른쪽 방향으로 적용할 수 있습니다. 예: ``'insert wordstart - 1 c'.- insert(index, chars, *args)¶
index 위치의 문자 바로 앞에 문자열 chars 를 삽입합니다(인덱스가
'end'인 경우 최종 개행 직전에 삽입됩니다). 기본적으로 새 텍스트는 삽입 지점 양쪽에 존재하는 태그를 상속받습니다. args 가 제공되는 경우, 이 값은 tagList 와 chars 값이 교대로 구성되며, 바로 앞의 chars 는 주변 태그를 무시하고 목록에 나열된 태그만 정확히 할당받습니다(태그 목록은 단일 태그 이름이나 이름들의 시퀀스일 수 있습니다).
- delete(index1, index2=None)¶
index1*부터 *index2 직전까지의 문자 범위를 삭제합니다. index2*가 생략된 경우 *index1 위치의 단일 문자가 삭제됩니다. 위젯은 항상 마지막 문자로 개행을 유지하므로, 이를 제거하게 되는 삭제 작업은 그에 맞춰 조정됩니다.
- replace(index1, index2, chars, *args)¶
index1 부터 index2 직전까지의 문자 범위를 chars 로 대체합니다. 이는 index1 에서
delete()를 수행한 후insert()를 호출하는 것과 동일하며, args 는insert()용으로 해석됩니다.Added in version 3.3.
- get(index1, index2=None)¶
index1*부터 *index2 직전까지의 텍스트를 문자열로 반환합니다. index2*가 생략된 경우 *index1 위치의 단일 문자를 반환합니다. 삽입된 이미지와 창은 결과에서 제외됩니다.
- index(index)¶
index 에 해당하는 위치를 표준
'line.char'형식으로 반환합니다.
- compare(index1, op, index2)¶
비교 연산자 op (
'<','<=','==','>=','>'또는'!='중 하나)를 사용하여 index1 과 index2 의 위치를 비교하고 불리언 결과를 반환합니다.
- count(index1, index2, *options, return_ints=False)¶
index1 과 index2 사이에 요청한 종류의 항목이 몇 개인지 계산합니다. index1 이 index2 보다 뒤에 있는 경우 카운트는 음수로 반환됩니다. options 의 각 항목은 계산할 항목의 종류를 정의합니다:
'chars','displaychars','displayindices','displaylines','indices','lines','xpixels'또는'ypixels'(옵션이 제공되지 않을 때 사용되는 기본값은'indices'입니다). 가상 옵션인'update'는 다음 옵션들을 평가하기 전에 오래된 레이아웃 정보가 강제로 재계산되도록 합니다. return_ints 가 True이고 단일 카운팅 옵션이 제공되면 일반 정수를 반환하며, 그렇지 않으면 각 카운팅 옵션에 대한 정수 하나씩을 포함하는 튜플을 반환합니다(결과가 비어 있는 경우None).Added in version 3.3.
버전 3.13에서 변경: return_ints 매개 변수가 추가되었습니다.
- see(index)¶
index 로 지정된 문자가 보이도록 화면을 조정합니다. 이미 보이는 경우 이 메서드는 아무런 효과가 없으며, 화면 밖으로 가깝게 벗어난 경우 해당 문자가 가장 가까운 가장자리에 오도록만 스크롤하며, 그 외의 경우에는 index 를 창 중앙에 배치하도록 스크롤합니다.
- bbox(index)¶
index 위치에 있는 문자의 표시 부분에 대한 경계 상자(bounding box)를 픽셀 단위로 포함하는 튜플
(x, y, width, height)를 반환하며, 해당 문자가 화면에 보이지 않으면None을 반환합니다.이것은 상속된
Misc.bbox()를 가립니다. 그리드 경계 상자의 경우grid_bbox()를 사용하십시오.
- dlineinfo(index)¶
index 를 포함하는 표시 줄(display line)에 대한 정보를 담은 튜플
(x, y, width, height, baseline)을 반환합니다. 처음 네 개의 값은 해당 줄의 경계 상자를 픽셀 단위로 나타내며, baseline 은 영역 상단에서부터 측정된 베이스라인(baseline)의 오프셋입니다. 해당 표시 줄이 화면에 보이지 않으면None을 반환합니다.
- mark_set(markName, index)¶
markName*이라는 이름의 마크를 *index 위치의 문자 직전으로 설정하며, 존재하지 않는 경우 마크를 생성합니다. 이렇게 생성된 마크는 기본적으로 오른쪽 중력(right gravity)을 갖습니다.
- mark_unset(*markNames)¶
markNames 에 나열된 각 마크를 제거합니다. 특별한
insert및current마크는 제거할 수 없습니다.
- mark_names()¶
현재 위젯에 설정된 모든 마크의 이름을 튜플로 반환합니다.
- mark_gravity(markName, direction=None)¶
direction 이 생략된 경우 markName 마크의 중력(gravity)을
'left'또는'right'로 반환합니다. 그렇지 않으면 해당 마크의 중력을 direction 으로 설정합니다. 중력은 마크 위치에 삽입되는 텍스트가 마크의 어느 쪽에 위치할지를 결정하며, 오른쪽 중력(기본값)을 가진 마크는 해당 텍스트의 오른쪽에 유지됩니다.
- mark_next(index)¶
index 또는 그 이후에 위치한 첫 번째 마크의 이름을 반환하며, 없으면
None을 반환합니다. index 가 마크 이름인 경우, 검색은 해당 마크 바로 다음부터 시작됩니다.
- mark_previous(index)¶
index 또는 그 이전에 위치한 마지막 마크의 이름을 반환하며, 없으면
None을 반환합니다. index 가 마크 이름인 경우, 검색은 해당 마크 바로 직전부터 시작됩니다.
- tag_add(tagName, index1, *args)¶
index1 부터 args 에 있는 다음 인덱스 직전까지의 범위에 tagName 태그를 추가합니다. args 에 이어지는 다른 인덱스 쌍들은 추가적인 범위를 태그하며, 마지막에 단일 인덱스가 오면 해당 인덱스의 문자만 태그됩니다.
- tag_remove(tagName, index1, index2=None)¶
index1*부터 *index2 직전까지의 범위(또는 index2*가 생략된 경우 *index1*의 단일 문자)에서 *tagName 태그를 제거합니다. 태그 자체는 해당 태그를 가진 문자가 없더라도 계속 존재합니다.
- tag_delete(*tagNames)¶
tagNames 에 나열된 각 태그를 삭제하며, 모든 문자의 해당 태그를 제거하고 그 옵션과 바인딩을 폐기합니다.
- tag_configure(tagName, cnf=None, **kw)¶
tagName 태그의 구성 옵션을 조회하거나 수정합니다. 이는
configure()를 모방하되 위젯 전체가 아닌 태그에 적용됩니다. 옵션이 없는 경우 현재 옵션을 설명하는 딕셔너리를 반환하며, 그렇지 않으면 제공된 옵션을 설정합니다. 이 방식으로 태그를 정의하면 기존의 어떤 태그보다 높은 우선순위를 갖게 됩니다.태그가 적용된 텍스트의 외관을 제어하는 지원되는 태그 옵션은 다음과 같습니다:
- font
텍스트에 사용할 글꼴입니다.
- foreground
텍스트에 사용할 색상입니다.
- background
텍스트 뒤쪽 영역에 사용할 색상입니다.
- fgstipple, bgstipple
전경(텍스트)과 배경에 사용되는 비트맵입니다. X11에서만 잘 지원됩니다.
- borderwidth
relief 에 따라 텍스트 주변에 그려지는 테두리의 너비입니다(기본값
0).- relief
텍스트 테두리의 3차원 외관입니다:
'flat'``(기본값), ``'raised','sunken','ridge','groove'또는'solid'.- offset
윗첨자 및 아래첨자를 위해 텍스트가 베이스라인(baseline) 위로 얼마나 올라가는지(또는 음수일 경우 밑으로 내려가는지)를 결정합니다.
- underline
텍스트에 밑줄을 긋는지 여부입니다.
- underlinefg
밑줄의 색상입니다. 기본값은 텍스트 색상입니다.
- overstrike
텍스트 중앙에 선을 그어 취소선을 표시할지 여부입니다.
- overstrikefg
취소선 색상입니다. 기본값은 텍스트 색상입니다.
- elide
텍스트를 생략(숨김 처리)할지 여부입니다.
- justify
표시 줄의 첫 번째 문자의 정렬 방식입니다:
'left'``(기본값), ``'right'또는'center'.- wrap
너무 긴 줄을 어떻게 줄 바꿈할지 결정합니다:
'char','word'또는'none'.- lmargin1, lmargin2
논리적 줄의 첫 번째 표시 줄과 나머지 표시 줄의 들여쓰기(픽셀 단위)입니다.
- lmargincolor
왼쪽 여백 영역의 색상입니다.
- rmargin
오른쪽 여백(픽셀 단위)입니다.
- rmargincolor
오른쪽 여백 영역의 색상입니다.
- spacing1, spacing2, spacing3
논리적 줄의 첫 번째 표시 줄 위, 표시 줄 사이, 그리고 마지막 표시 줄 아래에 추가되는 공간(픽셀 단위)입니다.
- tabs
탭 정지 위치 세트이며, 형식은 위젯의 tabs 옵션과 동일합니다.
- tabstyle
탭 정지 위치의 해석 방식입니다:
'tabular'또는'wordprocessor'.- selectbackground, selectforeground
텍스트가 선택된 동안 사용되는 배경 및 전경 색상입니다.
참고
Tk 8.6에서 lmargincolor, overstrikefg, rmargincolor, selectbackground, selectforeground 및 underlinefg 옵션이 추가되었습니다.
tag_config`은 :meth:()!tag_configure`의 별칭입니다.
- tag_cget(tagName, option)¶
tagName 태그에 대한 구성 옵션 option 의 현재 값을 반환합니다.
- tag_names(index=None)¶
index*가 생략된 경우 위젯에 정의된 모든 태그 이름의 튜플을 반환하며, 그렇지 않으면 *index 위치의 문자에 적용된 태그의 이름만 반환합니다. 이름은 낮은 우선순위부터 높은 순서대로 정렬됩니다.
- tag_ranges(tagName)¶
tagName 으로 태그된 모든 텍스트 범위를 설명하는 인덱스 튜플을 반환합니다. 결과는 시작과 끝 인덱스가 번갈아 가며 나타나므로, 요소
2*i와2*i+1이 i 번째 범위를 제한합니다.
- tag_nextrange(tagName, index1, index2=None)¶
index1 부터(제공된 경우 index2 까지) tagName 으로 태그된 첫 번째 문자 범위가 있는지 정방향으로 탐색하고, 해당 범위의 시작 및 종료 인덱스를 포함하는 두 요소 튜플을 반환합니다. 일치하는 범위가 없으면 빈 튜플을 반환합니다.
- tag_prevrange(tagName, index1, index2=None)¶
index1 부터(제공된 경우 index2 까지) tagName 으로 태그된 가장 가까운 이전 문자 범위가 있는지 역방향으로 탐색하고, 해당 범위의 시작 및 종료 인덱스를 포함하는 두 요소 튜플을 반환합니다. 일치하는 범위가 없으면 빈 튜플을 반환합니다.
- tag_raise(tagName, aboveThis=None)¶
tagName 태그의 우선순위를 aboveThis 바로 위로 높이거나, aboveThis 가 생략된 경우 모든 태그 중 가장 높은 우선순위로 설정합니다. 겹치는 태그들의 표시 옵션이 충돌할 경우, 더 높은 우선순위를 가진 태그가 적용됩니다.
- tag_lower(tagName, belowThis=None)¶
tagName 태그의 우선순위를 belowThis 바로 아래로 낮추거나, belowThis 가 생략된 경우 모든 태그 중 가장 낮은 우선순위로 설정합니다.
- tag_bind(tagName, sequence, func, add=None)¶
tagName 으로 태그된 문자에 대해 이벤트 sequence 가 발생할 때 콜백 func 이 호출되도록 바인딩합니다. add 가 True이면 기존의 sequence 에 대한 바인딩과 함께 추가되며, 그렇지 않으면 기존 바인딩을 대체합니다.
bind()와 유사하게 작동하며 새 바인딩의 식별자를 반환합니다.
- tag_unbind(tagName, sequence, funcid=None)¶
tagName 으로 태그된 문자에 대한 이벤트 sequence 의 바인딩을 제거합니다. funcid 가 제공되는 경우, 해당 바인딩(
tag_bind()에서 반환된 것)만 제거되고 콜백이 등록 해제됩니다.버전 3.13에서 변경: funcid 가 제공된 경우, 해당 콜백만 해제됩니다.
- image_create(index, cnf={}, **kw)¶
index 에 이미지를 삽입하고 이 이미지 인스턴스에 할당된 이름을 반환합니다. 이 이름은 이후 인덱스로 사용되거나 다른
image_*메서드에 전달될 수 있습니다. cnf 및 kw 로 제공되는 옵션에는 image_ (표시할 Tk 이미지), name (인스턴스의 기본 이름), align, padx, pady 가 포함됩니다.
- image_cget(index, option)¶
index 에 삽입된 이미지의 구성 옵션 option 에 대한 현재 값을 반환합니다.
- image_configure(index, cnf=None, **kw)¶
어느
configure()과 유사하게, index 에 위치한 임베드된 이미지의 구성 옵션을 조회하거나 수정합니다.
- image_names()¶
위젯에 포함된 모든 이미지의 이름이 담긴 튜플을 반환합니다.
참고
이 메서드는 Tcl 인터프리터 내의 모든 이미지 이름을 반환하는 상속된
Misc.image_names()를 대체하며, 해당 메서드는Text에서 사용할 수 없습니다.
- window_create(index, cnf={}, **kw)¶
index 에 창(모든 위젯)을 임베드합니다. cnf 및 kw 에 제공되는 옵션에는 window (임베드할 위젯), create (필요 시 위젯을 생성하는 콜백), align, stretch, padx, pady 가 포함됩니다. 임베드된 위젯은 반드시 텍스트 위젯 부모의 자손이어야 합니다.
- window_cget(index, option)¶
index*에 위치한 임베드된 창의 구성 옵션 *option 현재 값을 반환합니다.
- window_configure(index, cnf=None, **kw)¶
어느
configure()와 유사하게, index 에 위치한 임베드된 창의 구성 옵션을 조회하거나 수정합니다.window_config`은 :meth:()!window_configure`의 별칭입니다.
- window_names()¶
위젯에 포함된 모든 창의 이름이 담긴 튜플을 반환합니다.
- edit(*args)¶
되돌리기/다시실행(undo/redo) 메커니즘과 수정됨 플래그를 제어하는 Tk
edit_위젯 명령에 대한 저수준 래퍼입니다. args 는edit_서브명령과 그 인자들입니다. 아래의edit_*()메서드들은 이를 간결하게 래핑한 것으로, 보통 사용하기 더 편리합니다.
- edit_modified(arg=None)¶
arg*가 생략된 경우 수정됨 플래그의 현재 상태를 ``0`` 또는 ``1``로 반환합니다. 이 플래그는 텍스트가 삽입되거나 삭제될 때마다 자동으로 설정됩니다. 그렇지 않은 경우 플래그를 불린(boolean) *arg 값으로 설정합니다.
- edit_canundo()¶
되돌림(undo) 스택에 되돌릴 수 있는 편집 작업이 있으면
True를, 없으면False를 반환합니다.Added in version 3.16.0a0 (unreleased).
- edit_canredo()¶
다시실행(redo) 스택에 다시 적용할 수 있는 편집 작업이 있으면
True를, 없으면False를 반환합니다.Added in version 3.16.0a0 (unreleased).
- edit_undo()¶
가장 최근의 편집 동작(즉, 이전 구분선 이후로 되돌림 스택에 기록된 모든 삽입 및 삭제 내용)을 취소하고 이를 다시실행 스택으로 이동합니다. 되돌림 스택이 비어 있으면
TclError를 발생시킵니다. undo 옵션이 참인 경우에만 효과가 있습니다. Tk 9.0부터는 변경된 텍스트 범위를 구분하는 인덱스 튜플을 반환합니다.
- edit_redo()¶
이후에 추가 편집이 수행되지 않은 경우 가장 최근에 취소된 편집 동작을 다시 적용하고 이를 다시 되돌림 스택으로 이동합니다. 다시실행 스택이 비어 있으면
TclError를 발생시킵니다. undo 옵션이 참인 경우에만 효과가 있습니다. Tk 9.0부터는 변경된 텍스트 범위를 구분하는 인덱스 튜플을 반환합니다.
- edit_reset()¶
되돌림 및 다시실행 스택을 비웁니다.
- edit_separator()¶
되돌림과 다시실행 동작 사이의 경계를 표시하기 위해 되돌림 스택에 구분선을 추가합니다. undo 옵션이 참인 경우에만 효과가 있습니다. autoseparators 옵션이 참이면 구분선이 자동으로 삽입됩니다.
- search(pattern, index, stopindex=None, forwards=None, backwards=None, exact=None, regexp=None, nocase=None, count=None, elide=None, *, nolinestop=None, strictlimits=None)¶
index 부터 시작하는 pattern 을 검색하여 첫 번째 일치 항목의 첫 번째 문자의 인덱스를 반환합니다. 일치하는 항목이 없으면 빈 문자열을 반환합니다. stopindex 가 제공되면 해당 위치에서 검색이 중단되며, 그렇지 않으면 시작 위치에 다시 도달할 때까지 텍스트 끝을 넘어 순환하며 검색합니다. 다음 불린(boolean) 키워드 플래그가 검색을 제어합니다: forwards 또는 backwards 는 방향을 선택하며(기본값은 앞방향), exact (기본값) 또는 regexp 는 리터럴 또는 정규 표현식 일치 여부를 선택합니다. nocase 를 사용하면 대소문자를 구분하지 않으며, elide 를 사용하면 숨겨진 텍스트도 검색에 포함됩니다. nolinestop (정규 표현식 전용)을 사용하면
.및[^가 줄 바꿈을 일치시키며, strictlimits 는 일치하는 전체 범위가 index 와 stopindex 사이에 있어야 함을 요구합니다. count 가Variable인 경우, 일치한 위치의 인덱스 개수가 해당 변수에 저장됩니다.버전 3.15에서 변경: nolinestop 및 strictlimits 매개변수가 추가되었습니다.
- search_all(pattern, index, stopindex=None, *, forwards=None, backwards=None, exact=None, regexp=None, nocase=None, count=None, elide=None, nolinestop=None, overlap=None, strictlimits=None)¶
search()와 유사하지만, 검색 범위 내의 모든 일치 항목을 찾아 모든 일치 위치의 시작 인덱스가 담긴 튜플을 반환합니다(일치 항목이 없으면 빈 튜플). 기본적으로 중첩된 일치 항목은 보고되지 않으며, overlap 을 True로 전달하면 다른 일치 항목에 완전히 포함되지 않는 모든 경우를 반환합니다. count 가Variable인 경우, 각 일치 항목당 하나의 요소를 가진 리스트를 받습니다.Added in version 3.15.
- scan_mark(x, y)¶
향후
scan_dragto()호출에 사용할 x, y 및 현재 뷰를 기록합니다. 이 기능은 일반적으로 위젯에서 마우스 버튼 클릭과 바인딩됩니다.
- scan_dragto(x, y)¶
x, y 와 마지막으로 호출된
scan_mark()에 전달된 좌표 사이의 차이만큼 위젯을 10배 이동시킵니다. 이는 일반적으로 마우스 이동 이벤트와 연결되어 창을 통해 텍스트를 빠르게 드래그하는 효과를 냅니다.
- debug(boolean=None)¶
boolean 이 생략된 경우 B-트리 데이터 구조의 내부 일관성 검사가 활성화되어 있는지 여부를 반환합니다. 그렇지 않으면 해당 기능을 활성화하거나 비활성화합니다. 이 설정은 모든 텍스트 위젯과 공유되며, 많은 양의 텍스트를 포함하는 위젯의 속도를 현저히 느려지게 할 수 있습니다.
- dump(index1, index2=None, command=None, **kw)¶
index1 부터 index2 직전까지(또는 index2 가 생략된 경우 index1 지점의 세그먼트만)의 위젯 내용을 반환하며, 여기에는 텍스트와 마크, 태그, 이미지 및 창에 대한 정보가 포함됩니다. 결과는
(key, value, index)트리플로 구성된 리스트이며, key 는'text','mark','tagon','tagoff','image'또는'window'중 하나입니다. 기본적으로 모든 종류가 보고되며, all, text, mark, tag, image 또는 window 를 True로 전달하면 선택한 유형만 출력합니다. command 가 제공되면 각 트리플마다 세 개의 값을 인자로 하여 한 번 호출되며, 아무것도 반환되지 않습니다.
- peer_create(newPathName, cnf={}, **kw)¶
newPathName 경로를 가진 피어(peer) 텍스트 위젯을 생성하며, 이 위젯과 데이터(텍스트, 마크, 태그, 이미지 및 되돌림 스택)를 공유합니다. 어떤 피어를 통해 변경된 사항도 모든 피어에 반영됩니다. 기본적으로 피어는 현재 위젯과 동일한 줄을 포함하지만, startline 및 endline 을 포함한 표준 텍스트 옵션을 사용하여 이를 재정의할 수 있습니다.
Added in version 3.3.
- peer_names()¶
이 위젯을 제외한, 이 위젯의 피어들의 경로 이름이 담긴 튜플을 반환합니다.
Added in version 3.3.
- sync(command=None)¶
표시된 뷰와 기본 텍스트 간의 동기화를 제어합니다. 줄 높이가 아직 계산되지 않은 경우(예: 한 번도 표시된 적 없는 줄)에는 텍스트가 뒤처질 수 있습니다. command 가 생략된 경우, 오래된 모든 줄 높이의 계산을 강제로 수행하여 줄 메트릭을 즉시 최신 상태로 업데이트하고 현재 상태가 되면 반환합니다. 그렇지 않으면 모든 줄 높이가 업데이트되는 즉시 인자 없이 command 를 한 번 호출하도록 예약합니다. 대기 중인 계산이 없는 경우, 바로 호출됩니다.
Added in version 3.16.0a0 (unreleased).
- pendingsync()¶
줄 높이 계산이 최신 상태가 아니면
True``를 반환하고, 그렇지 않으면 ``False``를 반환합니다. 이 상태가 변할 때마다 ``<<WidgetViewSync>>가상 이벤트가 발생하며, detail 필드에 새로운 값이 설정됩니다.Added in version 3.16.0a0 (unreleased).
변수 클래스¶
- class tkinter.Variable(master=None, value=None, name=None)¶
Tk 변수 래퍼를 위한 기본 클래스입니다. Tk 변수는 Tcl 인터프리터에 저장된 값으로, 위젯의 variable 또는 textvariable 옵션을 통해 연결될 수 있습니다(참고: 위젯 변수 결합하기). 이를 통해 양방향 변경 사항이 전파됩니다. 즉, 변수를 업데이트하면 해당 변수에 바인딩된 모든 위젯이 업데이트되고, 사용자가 해당 위젯을 편집하면 변수가 업데이트됩니다.
master 는 해당 변수를 소유하는 Tcl 인터프리터의 위젯입니다. 생략하면 기본 루트 창이 사용됩니다. value 는 초기값이며, 생략 시 타입별 기본값이 사용됩니다. name 은 Tcl 인터프리터 내 변수의 이름입니다. 생략 시
'PY_VARnum'형태의 고유한 이름이 생성됩니다. name 이 기존 변수와 일치하고 value 가 생략된 경우, 기존 값이 유지됩니다.대부분의 경우 Tk 변수를 사용할 때는
Variable을 직접 사용하는 대신, 아래의 타입화된 서브클래스 중 하나인StringVar,IntVar,DoubleVar또는BooleanVar를 사용해야 합니다.참고
Variable이 가비지 컬렉션될 때 해당 Tcl 변수가 해제됩니다. 위젯이 이 변수와 연결되어 있는 동안에는 로컬 변수 대신 속성으로 저장하는 등 변수에 대한 참조를 유지하십시오. 그렇지 않으면 Tk는 위젯을 계속 작동시키기 위해 Tcl 변수를 다시 생성하지만, 한 번 생성된 변수는 다시 해제되지 않아 래퍼가 하나 제거될 때마다 Tcl 변수가 하나씩 누수됩니다.버전 3.10에서 변경: 이제 두 변수가 동일한 이름, 동일한 클래스, 동일한 Tcl 인터프리터에 속할 때만 같음(
==)으로 비교됩니다.- get()¶
변수의 현재 값을 반환합니다. 기본 클래스의 경우 값이 문자열로 반환되며, 타입화된 서브클래스에서는 적절한 Python 타입으로 변환됩니다.
- set(value)¶
변수를 value 로 설정합니다.
initialize()는set()의 별칭입니다.Added in version 3.3: initialize 철자.
- trace_add(mode, callback)¶
mode 에 따라 변수에 접근할 때 호출될 callback 을 등록합니다. mode 는
'array'','read'','write''또는'unset''중 하나이거나, 이러한 문자열의 리스트 또는 튜플입니다.호출될 때, callback*은 세 개의 인자와 함께 호출됩니다: Tcl 변수 이름, 인덱스(변수가 배열의 요소가 아닌 경우 빈 문자열), 그리고 호출을 트리거한 *mode.
등록된 콜백의 내부 이름을 반환하며, 이는
trace_remove()에 전달될 수 있습니다.Added in version 3.6.
- trace_remove(mode, cbname)¶
변수에서 추적 콜백을 제거합니다. mode 는
trace_add()에 전달된 mode 와 일치해야 하며, cbname 은trace_add()에 의해 반환된 콜백 이름입니다.Added in version 3.6.
- trace_info()¶
현재 변수에 설정된 모든 추적에 대한
(modes, cbname)쌍의 리스트를 반환합니다. 여기서 modes 는 모드 문자열의 튜플이며, cbname 은 콜백 내부 이름입니다.Added in version 3.6.
- trace_variable(mode, callback)¶
mode 에 따라 변수에 접근할 때 호출될 callback 을 등록합니다. mode 는 읽기(read), 쓰기(write), 해제(unset)를 의미하는
'r'','w''또는'u''중 하나입니다. 등록된 콜백의 내부 이름을 반환합니다.trace()는trace_variable()의 별칭입니다.버전 3.6부터 폐지됨: 대신
trace_add()을 사용하십시오. 이 메서드는 Tcl 9.0에서 제거된 Tcl 기능을 래핑한 것입니다.
- trace_vdelete(mode, cbname)¶
trace_variable()을 통해 등록된 mode 에 대한 콜백 이름이 cbname 인 추적 콜백을 제거합니다.버전 3.6부터 폐지됨: 대신
trace_remove()를 사용하십시오. 이 메서드는 Tcl 9.0에서 제거된 Tcl 기능을 래핑한 것입니다.
- trace_vinfo()¶
trace_variable`로 설정된 모든 추적에 대한 ``(mode, cbname)`()쌍의 리스트를 반환합니다.버전 3.6부터 폐지됨: 대신
trace_info()를 사용하십시오. 이 메서드는 Tcl 9.0에서 제거된 Tcl 기능을 래핑한 것입니다.
- class tkinter.StringVar(master=None, value=None, name=None)¶
문자열을 저장하는
Variable서브클래스입니다. 기본값은''입니다.
- class tkinter.DoubleVar(master=None, value=None, name=None)¶
부동 소수점을 저장하는
Variable서브클래스입니다. 기본값은0.0입니다.참고
부동 소수점 값은 항상 마침표(
.)를 소수점 구분 기호로 파싱하지만,Spinbox,Scale및ttk.Spinbox는 이를LC_NUMERIC로케일에 따라 포맷팅합니다. 쉼표를 사용하는 로케일에서는 이들이get()이 읽을 수 없는 값을 생성하여TclError를 발생시킬 수 있습니다. 이를 방지하려면LC_NUMERIC을 마침표를 사용하는 로케일(예:'C')로 설정하십시오.
- class tkinter.BooleanVar(master=None, value=None, name=None)¶
불리언(boolean)을 저장하는
Variable서브클래스입니다. 기본값은False입니다.- get()¶
변수의 값을
bool로 반환합니다. 값이 불리언으로 해석될 수 없는 경우ValueError를 발생시킵니다.
- set(value)¶
변수를 value 로 설정하고 불리언으로 변환합니다.
initialize()는set()의 별칭입니다.Added in version 3.3: initialize 철자.
이미지 클래스¶
- class tkinter.Image(imgtype, name=None, cnf={}, master=None, **kw)¶
Tk 이미지를 위한 기본 클래스입니다. imgtype 은 Tk 이미지 유형으로,
'photo'또는'bitmap'중 하나입니다. 이미지는 위젯의 image 옵션을 통해 표시될 수 있는 이름이 있는 객체이며,Image객체에 대한 모든 참조를 삭제하면 기반이 되는 Tk 이미지가 삭제됩니다. 일반적으로는Image를 직접 생성하기보다PhotoImage또는BitmapImage를 생성합니다.이미지의 구성 옵션은 cnf 와 kw 로 제공되며, 나중에 매핑 프로토콜(
image[key]사용)이나configure()메서드를 통해 조회하거나 변경할 수 있습니다.- configure(**kw)¶
이미지의 하나 이상의 구성 옵션을 수정합니다. 유효한 옵션은 이미지 유형에 따라 다릅니다.
PhotoImage및BitmapImage를 참조하십시오.config()는configure()의 별칭입니다.
- height()¶
이미지의 높이를 픽셀 단위로 반환합니다.
- width()¶
이미지의 너비를 픽셀 단위로 반환합니다.
- type()¶
이미지의 유형(예:
'photo''또는'bitmap'')을 반환하며, 이는 생성 시 사용된 imgtype 의 값입니다.
- class tkinter.PhotoImage(name=None, cnf={}, master=None, **kw)¶
풀 컬러 이미지(Tk
photo이미지 유형)로, 내부적으로 픽셀별 가변 투명도를 포함하여 저장됩니다. GIF, PPM/PGM 및 (Tk 8.6 이상에서) PNG 파일을 읽고 쓸 수 있으며, SVG 파일도 읽을 수 있고(Tk 9.0 이상), 위젯에 그려질 수 있습니다.Image를 상속받습니다.구성 옵션에는 data*(문자열 형태의 이미지 내용), *file*(내용을 읽어올 파일 이름), *format*(파일 형식 처리기 이름), *width 및 height*(조각별로 구축할 때 사용되는 이미지 크기), *gamma, palette 등이 포함됩니다.
- blank()¶
이미지를 비웁니다. 즉, 이미지 전체의 데이터를 없애 투명하게 표시하여 이미지가 배치된 창의 배경이 보이도록 합니다.
- redither()¶
이미지가 표시되는 각 창에서 디더링된 이미지를 다시 계산합니다. 이는 이미지 데이터가 조각으로 제공되어 디더링된 이미지가 정확하지 않을 수 있는 경우에 유용합니다.
Added in version 3.16.0a0 (unreleased).
- cget(option)¶
구성 옵션 option 의 현재 값을 반환합니다.
- copy(*, from_coords=None, zoom=None, subsample=None)¶
이 이미지의 복사본을 포함하는 새로운
PhotoImage를 반환합니다.from_coords 는 복사할 원본 이미지의 직사각형 부분 영역을 지정합니다. 이 값은 1개에서 4개의 정수로 구성된 튜플 또는 리스트
(x1, y1, x2, y2)여야 합니다.(x1, y1)과(x2, y2)는 직사각형의 대각선 방향에 위치한 두 모서리를 지정합니다. x2 와 y2 가 지정되지 않은 경우 원본 이미지의 오른쪽 하단 모서리가 기본값으로 설정됩니다. 복사되는 픽셀은 직사각형의 왼쪽과 위쪽 가장자리는 포함하지만, 아래쪽이나 오른쪽 가장제는 포함하지 않습니다. from_coords 가 제공되지 않으면 원본 이미지 전체를 복사합니다.If zoom or subsample are specified, the image is transformed as in the
zoom()orsubsample()methods. The value must be a single integer or a pair of integers.버전 3.13에서 변경: from_coords, zoom, subsample 매개변수가 추가되었습니다.
- copy_replace(sourceImage, *, from_coords=None, to=None, shrink=False, zoom=None, subsample=None, compositingrule=None)¶
sourceImage (반드시
PhotoImage여야 함)에서 영역을 이 이미지로 복사하며, 필요에 따라 픽셀 확대 및/또는 서브샘플링이 적용될 수 있습니다. 옵션이 지정되지 않으면 sourceImage 전체가 좌표(0, 0)부터 시작하여 이 이미지로 복사됩니다.from_coords 는
copy()메서드와 마찬가지로 복사할 원본 이미지의 직사각형 부분 영역을 지정합니다.to 는 영향을 받는 대상 이미지의 직사각형 부분 영역을 지정합니다. 이는 1개에서 4개의 정수로 구성된 튜플 또는 리스트
(x1, y1, x2, y2)여야 합니다. x2 와 y2 가 지정되지 않은 경우, 이 값은(x1, y1)에 원본 영역의 크기(서브샘플링 및 확대 적용 시 이를 반영한 크기)를 더한 값으로 설정됩니다. x2 와 y2 가 모두 지정된 경우, 대상 영역을 채우기 위해 필요한 경우 원본 영역을 타일 방식으로 반복하여 배치합니다.shrink 이 True인 경우, 복사되는 영역이 이미지의 오른쪽 하단 모서리에 위치하도록 필요한 경우 대상 이미지의 크기를 줄입니다.
If zoom or subsample are specified, the image is transformed as in the
zoom()orsubsample()methods. The value must be a single integer or a pair of integers.compositingrule 은 소스 이미지의 투명한 픽셀이 대상 이미지와 결합되는 방식을 지정합니다.
'overlay'(기본값)를 사용하면, 마치 소스 이미지가 투명 필름에 인쇄되어 대상 이미지 위에 올려진 것처럼 대상 이미지의 기존 내용이 그대로 보입니다.'set'을 사용하면 대상 이미지의 기존 내용은 버려지고 소스 이미지가 있는 그대로 사용됩니다.Added in version 3.13.
- data(format=None, *, from_coords=None, background=None, grayscale=False, metadata=None)¶
이미지 데이터를 반환합니다.
format 은 사용할 이미지 파일 형식 처리기의 이름을 지정합니다. 제공되지 않으면 데이터는
#RRGGBB형식의 색상이 공백으로 구분된(픽셀/열당 하나), 행마다 하나의 요소를 가진 튜플 형태의 문자열로 반환됩니다.from_coords 는 반환할 이미지의 직사각형 영역을 지정합니다. 이는 1개에서 4개의 정수로 구성된 튜플 또는 리스트
(x1, y1, x2, y2)여야 합니다. x1 과 y1 만 지정된 경우 영역은(x1, y1)부터 이미지의 오른쪽 하단 모서리까지 확장됩니다. 네 개의 좌표가 모두 제공된 경우, 이들은(x1, y1)을 포함하고(x2, y2)를 제외하는 영역의 대각선 방향 두 모서리를 지정합니다. from_coords 가 제공되지 않으면 이미지 전체가 반환됩니다.background 이 지정된 경우 데이터에 투명도 정보가 포함되지 않으며, 모든 투명한 픽셀의 색상이 지정된 색상으로 대체됩니다.
grayscale 이 참인 경우 데이터에 색상 정보가 포함되지 않으며 모든 픽셀 데이터가 그레이스케일로 변환됩니다.
metadata 는 이미지 형식 드라이버에 전달되는 딕셔너리입니다. Tcl/Tk 9.0 이상이 필요합니다.
Added in version 3.13.
버전 3.16.0a0 (unreleased)에서 변경: metadata 매개변수가 추가되었습니다.
- get(x, y, *, withalpha=False)¶
좌표 (x, y)에 있는 픽셀의 색상을 각각 빨강, 녹색, 파랑 성분을 나타내는 0과 255 사이의 정수 세 개로 구성된
(r, g, b)튜플로 반환합니다. withalpha 가 참이면 반환되는 튜플에 픽셀의 알파(불투명도) 값을 나타내는 네 번째 요소가 포함됩니다.버전 3.16.0a0 (unreleased)에서 변경: withalpha 매개변수가 추가되었으며, 이는 Tcl/Tk 9.0 이상을 요구합니다.
- put(data, to=None, *, format=None, metadata=None)¶
이미지의 픽셀을 data 에 제공된 색상으로 설정합니다. data 는 문자열이거나 가로 행들의 중첩된 시퀀스(예:
"{red green} {blue yellow}\})여야 합니다.to 는 데이터가 복사되는 이미지 영역의 좌표를 지정합니다. 이는 영역의 왼쪽 상단 모서리 또는 선택적으로 오른쪽 하단 모서리를 포함하는 2개 또는 4개의 정수
(x1, y1)또는(x1, y1, x2, y2)로 구성된 튜플이나 리스트여야 합니다. 기본 위치는(0, 0)입니다.format 은 이미지 data 의 형식을 지정하며, 해당 문자로 시작하는 이름의 이미지 파일 형식 처리자만 시도됩니다.
metadata 는 이미지 형식 드라이버에 전달되는 딕셔너리입니다. Tcl/Tk 9.0 이상이 필요합니다.
버전 3.16.0a0 (unreleased)에서 변경: format 및 metadata 매개변수가 추가되었습니다.
- read(filename, format=None, *, from_coords=None, to=None, shrink=False, metadata=None)¶
filename 이라는 이름의 파일에서 이미지 데이터를 읽어 이미지에 넣습니다.
format 은 파일에 포함된 이미지 데이터의 형식을 지정합니다.
metadata 는 이미지 형식 드라이버에 전달되는 딕셔너리입니다. Tcl/Tk 9.0 이상이 필요합니다.
from_coords 는 대상 이미지로 복사할 이미지 파일 데이터의 직사각형 하위 영역을 지정합니다. 이 값은 1개에서 4개의 정수로 구성된 튜플이나 리스트
(x1, y1, x2, y2)여야 합니다. x1 과 y1 만 지정된 경우, 해당 영역은(x1, y1)부터 파일 내 이미지의 오른쪽 하단 모서리까지 확장됩니다. 4개의 좌표가 모두 제공되면, 대각선으로 마주 보는 두 모서리를 지정합니다. from_coords 가 제공되지 않으면 파일의 전체 이미지를 읽어옵니다.to 는 데이터가 읽혀 들어갈 이미지 영역의 왼쪽 상단 모서리 좌표를 지정합니다. 기본값은
(0, 0)입니다.shrink 이 True인 경우, 파일 데이터가 읽히는 영역이 이미지의 오른쪽 하단 모서리에 위치하도록 필요한 경우 이미지 크기를 줄입니다.
Added in version 3.13.
버전 3.16.0a0 (unreleased)에서 변경: metadata 매개변수가 추가되었습니다.
- subsample(x, y='', *, from_coords=None)¶
현재 이미지를 기반으로 하되, X 방향으로는 매 x 번째 픽셀, Y 방향으로는 매 y 번째 픽셀만 사용하는 새로운
PhotoImage를 반환합니다. y 가 제공되지 않으면 x 와 동일한 값을 기본값으로 사용합니다.from_coords 는
copy()메서드와 마찬가지로 복사할 원본 이미지의 직사각형 부분 영역을 지정합니다.버전 3.13에서 변경: from_coords 매개변수가 추가되었습니다.
- transparency_get(x, y)¶
좌표 (x, y)의 픽셀이 완전히 투명하면
True를 반환하고, 그렇지 않으면False를 반환합니다.Added in version 3.8.
- transparency_set(x, y, boolean)¶
boolean*이 True이면 좌표 (*x, y)의 픽셀을 완전히 투명하게 만들고, 그렇지 않으면 완전히 불투명하게 만듭니다.
Added in version 3.8.
- write(filename, format=None, from_coords=None, *, background=None, grayscale=False, metadata=None)¶
이미지의 데이터를 filename 이라는 이름의 파일에 씁니다.
format 은 사용할 이미지 파일 형식 핸들러의 이름을 지정합니다. 제공되지 않으면 파일 확장자를 기반으로 형식을 추측합니다.
from_coords 는 쓸 영역인 이미지의 직사각형 영역을 지정합니다. 이 값은 1개에서 4개의 정수로 구성된 튜플이나 리스트
(x1, y1, x2, y2)여야 합니다. x1 과 y1 만 지정된 경우, 해당 영역은(x1, y1)부터 이미지의 오른쪽 하단 모서리까지 확장됩니다. 4개의 좌표가 모두 제공되면 대각선으로 마주 보는 두 모서리를 지정합니다. from_coords 가 제공되지 않으면 이미지 전체를 씁니다.background 이 지정된 경우 데이터에 투명도 정보가 포함되지 않으며, 모든 투명한 픽셀의 색상이 지정된 색상으로 대체됩니다.
grayscale 이 참인 경우 데이터에 색상 정보가 포함되지 않으며 모든 픽셀 데이터가 그레이스케일로 변환됩니다.
metadata 는 이미지 형식 드라이버에 전달되는 딕셔너리입니다. Tcl/Tk 9.0 이상이 필요합니다.
버전 3.13에서 변경: background 및 grayscale 매개변수가 추가되었습니다.
버전 3.16.0a0 (unreleased)에서 변경: metadata 매개변수가 추가되었습니다.
- zoom(x, y='', *, from_coords=None)¶
이 이미지를 X 방향으로 x 배, Y 방향으로 y 배 확대하여 생성된 새로운
PhotoImage를 반환합니다. y 가 제공되지 않으면 x 와 동일한 값을 기본값으로 사용합니다.from_coords 는
copy()메서드와 마찬가지로 복사할 원본 이미지의 직사각형 부분 영역을 지정합니다.버전 3.13에서 변경: from_coords 매개변수가 추가되었습니다.
- class tkinter.BitmapImage(name=None, cnf={}, master=None, **kw)¶
X11 비트맵으로부터 생성된 2색 이미지(Tk
bitmap이미지 유형)입니다. 각 픽셀은 전경색(foreground), 배경색(background) 또는 아무것도 표시하지 않음(투명 효과 발생)을 나타냅니다.Image를 상속받습니다.구성 옵션은 data 또는 file (X11 비트맵 형식의 문자열 또는 해당 형식의 파일 이름), maskdata 또는 maskfile (동일한 형식을 따르는 마스크 비트맵), 그리고 foreground 및 background (두 가지 색상)입니다. 마스크가 0인 픽셀은 아무것도 표시하지 않으며, 그 외의 픽셀은 소스가 1이면 전경색을, 소스가 0이면 배경색을 표시합니다. background 가 빈 문자열로 설정되면 배경 픽셀은 투명하게 표시됩니다.
BitmapImage는Image로부터 상속받은 것 외에 자체적인 메서드가 없습니다.
기타 클래스¶
- class tkinter.Event¶
Misc.bind()로 바인딩된 콜백에 전달되는 이벤트의 속성을 담는 컨테이너입니다.Event인스턴스는 아래와 같은 속성들을 가지며, 각각은 기본 Tk 이벤트의 필드에 대응합니다. 이벤트 유형에 따라 의미가 없는 일부 속성은'??'문자열로 설정될 수 있습니다. 자세한 내용은 바인딩 및 이벤트 를 참조하십시오.- serial¶
이벤트의 일련번호입니다.
- num¶
눌렸거나 떼어진 마우스 버튼입니다(버튼 이벤트용).
- focus¶
창이 포커스를 가지고 있는지 여부입니다(
Enter및Leave이벤트용).
- keycode¶
눌렸거나 떼어진 키의 키코드가(keycode)입니다.
- state¶
이벤트의 상태를 숫자로 나타내거나(대부분의 이벤트), 문자열로 나타냅니다(
Visibility이벤트).
- time¶
밀리초 단위의 이벤트 타임스탬프입니다.
- char¶
입력된 문자를 문자열로 나타냅니다(키 이벤트용).
- send_event¶
이벤트가 다른 애플리케이션에 의해 전송된 경우
True를 반환합니다.
- keysym¶
눌렸거나 떼어진 키의 심볼릭 이름입니다.
- widget¶
이벤트가 발생한 위젯입니다.
- delta¶
마우스 휠이 회전한 양입니다(
MouseWheel이벤트용).
- user_data¶
Misc.event_generate()의 data 옵션으로 전달되는 가상 이벤트의 데이터 문자열입니다. 가상 이벤트가 아닌 경우'??'이 됩니다.Added in version 3.15.
- detail¶
Enter,Leave,FocusIn,FocusOut및ConfigureRequest이벤트에 대한 고정된 상세 문자열입니다(Tcl/Tk 문서를 참조하십시오). 그 외의 이벤트는'??'가 됩니다.Added in version 3.15.
- class tkinter.EventType(*values)¶
Tk 이벤트 유형을 나열하는
enum.StrEnum으로,Event.type의 값으로 사용됩니다. 멤버에는KeyPress,KeyRelease,ButtonPress,ButtonRelease,Motion,Enter,Leave,FocusIn,FocusOut,Configure,Map,Unmap,Expose,Destroy및MouseWheel등이 포함됩니다.Added in version 3.6.
- class tkinter.CallWrapper(func, subst, widget)¶
Python 콜백을 래핑하여 Tcl에서 호출할 수 있게 하는 내부 도우미입니다. func 는 Python 함수, subst 는 Tcl 인수를 사전 처리하는 선택적 함수, widget 은 오류 보고에 사용되는 위젯입니다. 이 클래스의 인스턴스는
Misc.register()에 의해 자동으로 생성되며, 일반적으로 직접 사용되지 않습니다.
모듈 수준 함수¶
- tkinter.Tcl(screenName=None, baseName=None, className='Tk', useTk=False)¶
Tcl()함수는 Tk 서브시스템을 초기화하지 않는다는 점을 제외하고,Tk클래스에 의해 생성되는 것과 매우 유사한 객체를 생성하는 팩토리 함수입니다. 이는 불필요한 최상위 창을 생성하고 싶지 않거나 생성할 수 없는(X 서버가 없는 Unix/Linux 시스템 등) 환경에서 Tcl 인터프리터를 구동할 때 주로 유용합니다.Tcl()객체에 의해 생성된 객체는loadtk()메서드를 호출하여 최상위 창을 생성하고 Tk 서브시스템을 초기화할 수 있습니다.
- tkinter.NoDefaultRoot()¶
암시적인 기본 루트 창의 생성을 억제합니다. 이후에
tkinter는 공유 기본 루트를 자동으로 생성하지 않으며, 명시적인 master 없이 위젯을 구성하는 등 하나에 의존하는 작업은RuntimeError를 발생시킵니다. 대규모 애플리케이션에서는 루트 창을 명시적으로 설정하기 위해 이 기능을 초기에 호출하십시오.
- tkinter.mainloop(n=0)¶
모든 창이 파괴될 때까지 기본 루트 창에서 Tk 메인 이벤트 루프를 실행합니다. 이는 기본 루트에 대해
Misc.mainloop()를 호출하는 것과 동일합니다.
- tkinter.getboolean(s)¶
Convert the Tcl boolean string s (one of
'1','true','yes','on'and similar, or their false counterparts) to a Pythonbool. RaiseTclErrorfor an invalid value.
- tkinter.image_names()¶
기본 루트의 인터프리터에 존재하는 모든 이미지의 이름을 반환합니다.
- tkinter.image_types()¶
기본 루트의 인터프리터에서 사용 가능한 이미지 유형(예:
'photo'', ``'bitmap')을 반환합니다.
파일 처리기¶
Tk는 파일 기술자에서 I/O가 가능할 때 Tk 메인 루프에서 호출할 콜백 함수를 등록하고 등록 취소할 수 있도록 합니다. 파일 기술자당 하나의 처리기 만 등록 될 수 있습니다. 예제 코드:
import tkinter
widget = tkinter.Tk()
mask = tkinter.READABLE | tkinter.WRITABLE
widget.tk.createfilehandler(file, mask, callback)
...
widget.tk.deletefilehandler(file)
윈도우에서는 이 기능을 사용할 수 없습니다.
얼마나 많은 바이트를 읽을 수 있는지 모르므로, BufferedIOBase나 TextIOBase read()나 readline() 메서드를 사용하고 싶지 않을것입니다, 이것들은 미리 정의 된 바이트 수를 읽으려고하기 때문입니다. 소켓의 경우, recv() 또는 recvfrom() 메서드가 제대로 작동합니다; 다른 파일의 경우, 날(raw) 읽기나 os.read(file.fileno(), maxbytecount)를 사용하십시오.
- Widget.tk.createfilehandler(file, mask, func)¶
파일 처리기 콜백 함수 func를 등록합니다. file 인자는
fileno()메서드가 있는 객체이거나(가령 파일이나 소켓 객체), 정수 파일 기술자일 수 있습니다. mask 인자는 아래의 세 가지 상수들을 OR로 조합한 것입니다. 콜백은 다음과 같이 호출됩니다:callback(file, mask)
- Widget.tk.deletefilehandler(file)¶
파일 처리기를 등록 취소합니다.
상수¶
다음 심볼릭 상수들은 tkinter`와 :mod:!tkinter.constants` 네임스페이스 모두에서 사용할 수 있습니다.
- tkinter.N¶
- tkinter.S¶
- tkinter.E¶
- tkinter.W¶
- tkinter.NE¶
- tkinter.NW¶
- tkinter.SE¶
- tkinter.SW¶
- tkinter.NS¶
- tkinter.EW¶
- tkinter.NSEW¶
- tkinter.CENTER¶
방위(
'n'', `` 's'', ``'e'', `` 'w'' 및 대각선과 가장자리)와 ``CENTER('center'). 이는 anchor 및 sticky 옵션의 값으로 사용되며,Misc.grid_anchor()와 같은 메서드에서도 사용됩니다.
- tkinter.LEFT¶
- tkinter.RIGHT¶
- tkinter.TOP¶
- tkinter.BOTTOM¶
패커의 side 옵션을 위한 측면들입니다(참고:
Pack.pack_configure()).
- tkinter.X¶
- tkinter.Y¶
- tkinter.BOTH¶
- tkinter.NONE¶
Values for the fill option of the packer:
'x','y','both'or'none'.
- tkinter.RAISED¶
- tkinter.SUNKEN¶
- tkinter.FLAT¶
- tkinter.RIDGE¶
- tkinter.GROOVE¶
- tkinter.SOLID¶
위젯의 3차원 테두리를 제어하는 relief 옵션 값입니다.
- tkinter.HORIZONTAL¶
- tkinter.VERTICAL¶
Scale,Scrollbar,PanedWindow와 같은 위젯의 orient 옵션 값입니다.
- tkinter.BASELINE¶
The text-alignment value
'baseline'.
- tkinter.INSIDE¶
- tkinter.OUTSIDE¶
플레이서의 bordermode 옵션 값입니다(참고:
Place.place_configure()).
- tkinter.INSERT¶
- tkinter.CURRENT¶
- tkinter.END¶
- tkinter.ANCHOR¶
- tkinter.SEL¶
- tkinter.SEL_FIRST¶
- tkinter.SEL_LAST¶
Text,Entry,Listbox,Canvas위젯에서 사용되는 심볼릭 인덱스입니다. 예:'insert''(삽입 커서), ``'current'', ``'end'', ``'anchor'' 및 선택 범위(‘sel.first’’ 및'sel.last'').
- tkinter.CASCADE¶
- tkinter.CHECKBUTTON¶
- tkinter.COMMAND¶
- tkinter.RADIOBUTTON¶
- tkinter.SEPARATOR¶
Menu.add()및Menu.insert()의 itemType 인수로 사용되는 메뉴 항목 유형입니다.
- tkinter.BUTT¶
- tkinter.PROJECTING¶
- tkinter.ROUND¶
- tkinter.BEVEL¶
- tkinter.MITER¶
Canvas라인 항목의 capstyle ('butt'', `` 'projecting'', ``'round'') 및 joinstyle ('round'', `` 'bevel'', ``'miter'') 옵션 값입니다.
- tkinter.MOVETO¶
- tkinter.SCROLL¶
스크롤된 위젯의
XView.xview()또는YView.yview()메서드에Scrollbar가 전달하는 첫 번째 인수입니다.
- tkinter.UNITS¶
- tkinter.PAGES¶
XView.xview_scroll()및YView.yview_scroll()의 what 인자 값입니다.