본문 바로가기
GUI 튜토리얼/tkinter 한꼬집씩만 따라해보기

4. 버튼 추가하기

by 일코 2022. 11. 15.

이전 포스팅

2022.11.15 - [기타/tkinter 한꼬집씩만 따라해보기] - 3. 레이블 추가하기

 

3. 레이블 추가하기

import tkinter as tk win = tk.Tk() tk.Label(master=win, text="Hello").grid(column=0, row=0) win.mainloop() 지난 포스팅에서는 한 줄의 코드로 타이틀을 붙여보았습니다. 이번 포스팅에서는 한 줄의 코드로 레이블Label을

martinii.fun


이번 포스팅에서는

import tkinter as tk

win = tk.Tk()

tk.Button(master=win, text="클릭").grid(column=0, row=0)  # <---

win.mainloop()

위 코드는 GUI창에다가 버튼을 추가합니다.

우선 이대로 타이핑하고 실행해봅시다.

파이썬 GUI를 공부하시는 단계라면
파이썬 기본 문법은 알고 계실 거라고 가정하고
코드 실행방법을 따로 알려드리진 않겠습니다.

우리가 생성한 GUI창에 버튼이 하나 추가되었습니다.

버튼 안의 텍스트는 text 인자에 지정한 대로 "클릭"이 들어가 있습니다.

레이아웃이 그다지 멋지지는 않습니다.
레이아웃은 위젯에 대한 간단한 소개를 마치고 나서 구체적으로 다루도록 하겠습니다.

지난 포스팅인 "레이아웃"을 다룰 때와 거의 동일해 보이는 코드입니다.

tk.Button 클래스의 첫 번째 인자는 master입니다. 대부분의 다른 위젯도 마찬가지입니다.

master는 "주인이 누구냐?"는 인자로, 어떤 요소 안에 집어넣을 것인가를 알려줍니다.

우리가 생성한 창 인스턴스는 win이고, win 안에 넣을 것이기 때문에

master=win이라고 넣는 것이죠. ('이 버튼의 주인은 win이다.')

참고로, 버튼을 생성할 때 따로 변수명을 주지 않았습니다.

변수명을 준다는 것이 어떤 의미냐면 아래처럼 코딩하는 것입니다.

button = tk.Button(master=win, text="클릭")  # 버튼 인스턴스 생성
button.grid(column=0, row=0)  # win 안에서의 버튼 위치 지정

이렇게 변수명을 지정하면,

언제든 이 변수 button을 통해서 버튼 요소에 접근할 수 있게 됩니다.

button 안의 텍스트를 수정한다든지, 크기(폭, 너비)를 수정한다든지,

혹은 화면에서 버튼을 없애버린다든지 하는 작업이 가능하게 되죠.

여러분이 생각하고 있을 법한 대부분의 GUI창은

여러 가지 함수를 통해서 인터랙티브하게 작동해야 할텐데

이 버튼은 아직 아무 기능도 실행하지 않습니다.

버튼에 특정 동작을 실행하게 하는 인자는 command입니다. (다른 대부분의 위젯도 마찬가지입니다.)

다음 포스팅에서는 이 버튼에 command 인자를 통해서

가볍게 어떤 동작을 할 수 있도록 만들어 보겠습니다.

 


다음 포스팅

2022.11.15 - [기타/tkinter 한꼬집씩만 따라해보기] - 5. 버튼에 동작 추가하기 #도전과제

 

5. 버튼에 동작 추가하기 #도전과제

import tkinter as tk def click(): button.configure(text="클릭함") win = tk.Tk() button = tk.Button(win, text="클릭", command=click) button.grid(column=0, row=0) win.mainloop() 지난 포스팅에서 버튼을 생성해보았는데, 자고로 버튼의

martinii.fun

 

댓글