728x90
๋ฐ˜์‘ํ˜•

tkinter : GUI์— ๋Œ€ํ•œ ํ‘œ์ค€ Python ์ธํ„ฐํŽ˜์ด์Šค์ด๋ฉฐ Window ์ฐฝ์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

"Tkinter ์‹คํ–‰์‹œํ‚ค๊ธฐ"

๋”๋ณด๊ธฐ

1. python์— ๋“ค์–ด๊ฐ€์„œ ํ„ฐ๋ฏธ๋„์— pip install tk๋ฅผ ์ ์–ด tkinter์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ค๋‹ˆ๋‹ค

2. ์—…๊ทธ๋ ˆ์ด๋“œ๊ฐ€ ํ•„์š”ํ•˜๋ฉด upgrade ์ค„์„ ๋ฐ‘์— ์ ์–ด์ฃผ๋ฉด ๋œ๋‹ค.

3. ์ฝ”๋”ฉ ๊ณ ์šฐ

"์œˆ๋„์šฐ ์ฐฝ ์ƒ์„ฑํ•˜๊ธฐ"

๋”๋ณด๊ธฐ

import tkinter : ์ƒ๋‹จ์— import tkinter๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ GUI ๋ชจ๋“ˆ์„ ํฌํ•ฉ์‹œํ‚ต๋‹ˆ๋‹ค. tkinter ํ•จ์ˆ˜์˜ ์‚ฌ์šฉ๋ฐฉ๋ฒ•์€ tkinter."๋ฅผ ์ด์šฉํ•˜                               ์—ฌ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

window=tkinter.Tk() : ์œˆ๋„์šฐ ์ด๋ฆ„=tkinter.TK()๋ฅผ ์ด์šฉํ•˜์—ฌ ๊ฐ€์žฅ ์ƒ์œ„ ๋ ˆ๋ฒจ์˜ ์œˆ๋„์šฐ ์ฐฝ์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

window.mainloop() : ์œˆ๋„์šฐ ์ด๋ฆ„.mainloop()๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์œˆ๋„์šฐ ๋ฆฌ๋ฆ„์˜ ์œˆ๋„์šฐ ์ฐฝ์„ ์œˆ๋„์šฐ๊ฐ€ ์ข…๋ฃŒ๋  ๋•Œ ๊นŒ์ง€ ์‹คํ–‰์‹œํ‚ต๋‹ˆ๋‹ค.

                                     ์ƒ์„ฑ ๊ตฌ๋ฌธ๊ณผ ๋ฐ˜๋ณต ๊ตฌ๋ฌธ ์ƒ์— ์œ„์ ฏ์„ ์ƒ์„œ์•„๊ณ  ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.

tkinter.TK()๋ฅผ ์ ์šฉํ•  ๊ฒฝ์šฐ ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ์œˆ๋„์šฐ ์ฐฝ์ด ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

"Window ์ฐฝ ์„ค์ •"

๋”๋ณด๊ธฐ

import tkinter

 

window=tkinter.Tk()

 

window.title("CHO SU HYEON") : ์œˆ๋„์šฐ์ด๋ฆ„.title("์ œ๋ชฉ")์„ ์ด์šฉํ•˜์—ฌ ์œˆ๋„์šฐ ์ฐฝ์˜ ์ œ๋ชฉ์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

window.geometry("640x400+100+100": ์œˆ๋„์šฐ์ด๋ฆ„.geometry("๋„ˆ๋น„x๋†’์ด+x์ขŒํ‘œ+y์ขŒํ‘œ")๋ฅผ ์ด์šฉํ•˜์—ฌ ์œˆ๋„์šฐ ์ฐฝ

                                                                      ์˜ ๋„ˆ๋น„์™€ ๋†’์ด, ์ดˆ๊ธฐ ํ™”๋ฉด ์œ„์น˜์˜ x์ขŒํ‘œ์™€ y์ขŒํ‘œ๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

window.resizable(False, False) : ์œˆ๋„์šฐ์ด๋ฆ„.resizeable(์ƒํ•˜, ์ขŒ์šฐ)๋ฅผ ์ด์šฉํ•˜์—ฌ ์œˆ๋„์šฐ ์ฐฝ์˜ ์ฐฝ ํฌ๊ธฐ ์กฐ์ ˆ ๊ฐ€๋Šฅ ์—ฌ                                                          ๋ถ€๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. True๋กœ ์„ค์ •ํ•  ๊ฒฝ์šฐ ์œˆ๋„์šฐ ์ฐฝ์˜ ํฌ๊ธฐ๋ฅผ ์กฐ์ ˆํ•  ์ˆ˜ ์žˆ                                                            ์Šต๋‹ˆ๋‹ค.

 

window.mainloop() 

 * Tip : resizeable() ์„ ์ ์šฉํ•  ๋•Œ, True=1, False=0์„ ์˜๋ฏธํ•˜์—ฌ ์ƒ์ˆ˜๋ฅผ ์ž…๋ ฅํ•ด๋„ ์ ์šฉ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

์œˆ๋„์šฐ ์ฐฝ์˜ ์ด๋ฆ„์ด CHO SU HYEON๋กœ ์„ค์ •๋˜์—ˆ์œผ๋ฉฐ ํฌ๊ธฐ์™€ ์ดˆ๊ธฐ ํ™”๋ฉด ์œ„์น˜, ์œˆ๋„์šฐ ํŒก์˜ ํฌ๊ธฐ ์กฐ์ ˆ ๋ถˆ๊ฐ€๋กœ ์„ค์ •๋œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

"Widget ๋ฐฐ์น˜"

๋”๋ณด๊ธฐ

import tkinter

 

window=tkinter.Tk()

 

window.title("CHO SU HYEON")

window.geometry("640x400+100+100")

window.resizable(False, False)

 

label=tkinter.Label(window, text="์•ˆ๋…•ํ•˜์„ธ์š”.") ์œ„์ ฏ์ด๋ฆ„=tkinter.Label(์œˆ๋„์šฐ ์ฐฝ, text="๋‚ด์šฉ")์„ ์‚ฌ์šฉํ•˜์—ฌ ์œˆ๋„ ์šฐ ์ฐฝ์— Label ์œ„์ ฏ์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. / ์œ„์ ฏ์ด๋ฆ„.pacl()์„ ์‚ฌ์šฉํ•˜์—ฌ ์œ„์ ฏ์„ ๋ฐฐ์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

label.pack() 

 

window.mainloop()

์†์„ฑ์„ ์„ค์ •ํ•˜์ง€ ์•Š์•„ ๊ธฐ๋ณธ ์†์„ฑ์œผ๋กœ ์„ค์ •๋˜์–ด ๊ฐ€์žฅ ์ตœ์ƒ๋‹จ์— ๋ผ๋ฒจ์ด ๋ฐฐ์น˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

 

*์˜ค๋Š˜์˜ ์—๋Ÿฌ

ํŒŒ์ผ ์ด๋ฆ„์„ tkinter๋กœ ์„ค์ •ํ•˜์—ฌ attribute ์—๋Ÿฌ๊ฐ€ ์ž‘๋™ํ•˜์—ฌ ๋””๋ฒ„๊น…์ด ๋˜์ง€ ์•Š์•˜๋‹ค.

๋‹ค์‹œ ์ž‘๋™ํ•˜๊ณ  ๋‚˜๊ฐ”๋‹ค ๋“ค์–ด์™”๋Š”๋ฐ๋„ ์ž‘๋™ ์•ˆ๋˜์–ด ํŒŒ์ผ์˜ ์ œ๋ชฉ์ด ์˜ค๋ฅ˜์˜ ์ฃผ ์›์ธ์ด๋ผ๋Š” ๋ง์„ ๋งŽ์ด ๋“ค์–ด์„œ 

ํŒŒ์ผ ์ด๋ฆ„์„ tkinter2๋กœ ๋ฐ”๊พธ์–ด ๋‹ค์‹œ ์‹คํ–‰ํ•ด๋ณด๋‹ˆ ๋‹คํ–‰ํžˆ ์‹คํ–‰๋˜์—ˆ๋‹ค!!

 

 

728x90
๋ฐ˜์‘ํ˜•

+ Recent posts