Tkinter 튜토리얼-항목

  1. Tkinter Entry 예
  2. Tkinter Entry 기본 텍스트

Tkinter Entry 위젯을 사용하면 하나의 글꼴 유형 만있는 한 줄의 텍스트를 입력 할 수 있습니다. 더 많은 줄이 필요한 경우 Tkinter Text 위젯을 사용해야합니다. Entry 위젯을 사용하여 한 줄짜리 텍스트를 표시 할 수도 있습니다.

Tkinter Entry 예

Tkinter Entry_Basic.py
import tkinter as tk
from tkinter import ttk

def callbackFunc():
    resultString.set("{} - {}".format(landString.get(),
                                      cityString.get()))
     
app = tk.Tk() 
app.geometry('200x100')

labelLand = tk.Label(app,
                    text = "Country")
labelLand.grid(column=0, row=0, sticky=tk.W)
labelCity = tk.Label(app,
                    text = "City")
labelCity.grid(column=0, row=1, sticky=tk.W)

landString = tk.StringVar()
cityString = tk.StringVar()
entryLand = tk.Entry(app, width=20, textvariable=landString)
entryCity = tk.Entry(app, width=20, textvariable=cityString)

entryLand.grid(column=1, row=0, padx=10)
entryCity.grid(column=1, row=1, padx=10)


resultButton = tk.Button(app, text = 'Get Result',
                         command=callbackFunc)

resultButton.grid(column=0, row=2, pady=10, sticky=tk.W)

resultString=tk.StringVar()
resultLabel = tk.Label(app, textvariable=resultString)
resultLabel.grid(column=1, row=2, padx=10, sticky=tk.W)

app.mainloop()

이 예제 코드는 사용자가 국가 및 도시 이름을 입력 할 수있는 GUI 를 생성 한 다음 결과 가져 오기 버튼을 클릭 한 후 입력 된 정보를 표시합니다.

Tkinter Tutorial_Entry 기본

entryLand = tk.Entry(app, width=20, textvariable=landString)

너비가 20 자 단위 인 하나의 Tkinter Entry 위젯 인스턴스를 작성합니다. 입력 상자에 20 자만 표시 할 수 있으므로 텍스트 행에 20자가 넘는 문자가 있으면 화살표 키를 사용하여 나머지 행을 표시해야합니다.

엔트리 위젯의 텍스트는 Tkinter 문자열 변수 landString 에 할당됩니다. landString.get()메소드로 텍스트를 가져오고 landString.set()메소드로 텍스트를 설정할 수 있습니다. set()메소드를 사용하면 입력 상자의 텍스트가 자동으로 업데이트됩니다.

노트

StringVarget()메소드 외에도 Entry 위젯 오브젝트의 get()메소드를 사용하여 Entry 상자에서 문자열을 검색 할 수 있습니다.

Tkinter Entry 기본 텍스트

‘엔트리’기본 텍스트를 설정하는 두 가지 방법이 있습니다.

Tkinter Entry set() 기본 텍스트 설정 방법

위 예제에서 알 수 있듯이 StringVarset()메소드를 사용하여 Tkinter Entry 의 기본 텍스트를 설정할 수 있습니다.

예를 들어

landString.set("Netherlands")

기본 텍스트는 ‘네덜란드’로 설정됩니다.

insert() Tkinter Entry 기본 텍스트를 설정하는 메소드

insert(index, string)메소드는 주어진 index 위치에 string 텍스트를 삽입합니다. 그리고 indexEND 이면 텍스트를 Entry 위젯에 추가합니다.

entryLand.insert(tk.END, "Netherlands")

기본 텍스트를Netherlands 로 설정합니다.

노트

index 가 위젯의 기존 문자열 길이보다 크면 insert(END, string)와 같습니다.