๐ฅ๏ธ ์ปดํจํฐ ํ๋ฉด ๋ณดํธ๊ธฐ ์๋ ์ง์ ์ ๋ง์์ฃผ๋ ํ๋ก๊ทธ๋จ ๋ง๋ค๊ธฐ (Python + Tkinter)
์ฅ์๊ฐ ํ๋ ์ ํ ์ด์ , ์์ ๋ นํ, ์๊ฒฉ ์ฐ๊ฒฐ ๋ฑ์ผ๋ก ์ปดํจํฐ๋ฅผ ์กฐ์ํ์ง ์๋ ์ํฉ์ด ์์ฃผ ๋ฐ์ํ ๋, ํ๋ฉด ๋ณดํธ๊ธฐ๊ฐ ์๋์ผ๋ก ์คํ๋๋ฉด ์ ๋ง ๋ถํธํ์ฃ ? ๐
์ค๋์ Python์ผ๋ก ๋ง๋ ‘ํ๋ฉด ๋ณดํธ๊ธฐ ๋ฐฉ์ง ๋๊ตฌ’๋ฅผ ์๊ฐํฉ๋๋ค.
์ด ๋๊ตฌ๋ ์๋์ผ๋ก ๋ง์ฐ์ค๋ฅผ ๋ฏธ์ธํ๊ฒ ์์ง์ด๊ณ ํค๋ณด๋ ์
๋ ฅ์ ๋ฐ์์์ผ ํ๋ฉด ๋ณดํธ๊ธฐ๋ ์ ์ ๋ชจ๋ ์ง์
์ ๋ฐฉ์งํด์ค๋๋ค.
๐ก ์ด๋ค ๊ธฐ๋ฅ์ ํ๋์?
- โ 5์ด๋ง๋ค ๋ง์ฐ์ค๋ฅผ ์ฝ๊ฐ ์์ง์ฌ ์ฌ์ฉ ์ค์ธ ๊ฒ์ฒ๋ผ ์ธ์์ํด
- โ
Shift
ํค ์ ๋ ฅ์ ์ฃผ๊ธฐ์ ์ผ๋ก ๋ฐ์์์ผ ํค๋ณด๋ ํ๋๋ ๊ฐ์ง์ํด - โ ์์/์ค์ง ๋ฒํผ์ผ๋ก ๋ฐฉ์ง ๊ธฐ๋ฅ์ ์๋ ์ ์ด
- โ GUI๋ก ์ฝ๊ฒ ์กฐ์ ๊ฐ๋ฅ (Tkinter ์ฌ์ฉ)
๐ง ์ฌ์ฉ๋ ๊ธฐ์ ์คํ
ํญ๋ชฉ | ์ค๋ช |
---|---|
Python | ๊ธฐ๋ณธ ์ธ์ด |
Tkinter | GUI ํ๋ฉด ๊ตฌ์ฑ |
PyAutoGUI | ๋ง์ฐ์ค ๋ฐ ํค๋ณด๋ ์ ์ด |
threading | ๋ฐฑ๊ทธ๋ผ์ด๋ ์คํ ์ฒ๋ฆฌ |
messagebox | ์ฌ์ฉ์ ์๋ฆผ ๋ฉ์์ง ์ถ๋ ฅ |
๐งช ์ฃผ์ ์ฝ๋ ์ค๋ช
๐ 1. ๋ง์ฐ์ค ๋ฐ ํค๋ณด๋ ํ๋ ํจ์
5์ด๋ง๋ค ๋ง์ฐ์ค๋ฅผ ์ด์ง ์์ง์ด๊ณ , Shift
ํค๋ฅผ ๋๋ฌ ์ปดํจํฐ๊ฐ ์ ํด ์ํ๋ก ์ธ์๋์ง ์๋๋ก ํฉ๋๋ค.
def prevent_screensaver():
while preventing:
pyautogui.move(1, 0) # ์ค๋ฅธ์ชฝ์ผ๋ก 1ํฝ์
pyautogui.move(-1, 0) # ์ผ์ชฝ์ผ๋ก 1ํฝ์
pyautogui.press('shift') # Shift ํค ์
๋ ฅ
time.sleep(5)
๐ 2. ๋ฐฉ์ง ์์/์ค์ง ์ ์ด
"Start" ๋ฒํผ ํด๋ฆญ ์ ๋์์ ์์ํ๊ณ , "Stop" ๋ฒํผ ํด๋ฆญ ์ ์์ ์ด ์ค๋จ๋ฉ๋๋ค.
def start_prevention():
global preventing
preventing = True
threading.Thread(target=prevent_screensaver, daemon=True).start()
๐ 3. GUI ๊ตฌ์ฑ (Tkinter)
๋ฒํผ ๊ตฌ์ฑ:
- โ Start Prevention
- โ Stop Prevention
- โ Exit
root = tk.Tk() root.title("ํ๋ฉด ๋ณดํธ๊ธฐ ๋ฐฉ์ง ๋๊ตฌ") root.geometry("700x380")
๐ผ๏ธ ์คํ ํ๋ฉด ๋ฏธ๋ฆฌ ๋ณด๊ธฐ
- ํ๋ก๊ทธ๋จ์ ์คํํ๋ฉด ๊น๋ํ ์ฐฝ์ด ๋จ๊ณ ๋ฒํผ 3๊ฐ๋ก ์ฝ๊ฒ ์ ์ดํ ์ ์์ด์.
- "Start" ํด๋ฆญ ์ 5์ด๋ง๋ค ์ ๋ ฅ์ด ์๋ ๋ฐ์ํด ํ๋ฉด ๋ณดํธ๊ธฐ๋ฅผ ๋ง์์ค๋๋ค.
๐ก๏ธ ์ฃผ์์ฌํญ
pyautogui.FAILSAFE = False
์ค์ ์ผ๋ก ๋ง์ฐ์ค๋ฅผ ๊ตฌ์์ ์ฌ๋ ค๋ ์ข ๋ฃ๋์ง ์์ต๋๋ค.- ๊ธฐ๋ฅ์ ๋ฉ์ถ๋ ค๋ฉด ๋ฐ๋์ "Stop Prevention"์ ๋๋ฌ์ฃผ์ธ์.
๐ฅ ์ด๋ฐ ์ํฉ์์ ์ข์์!
์ฉ๋ | ์์ |
---|---|
๐ป ์๊ฒฉ ๊ทผ๋ฌด | ํ์ ์ค ํ๋ฉด ๊บผ์ง ๋ฐฉ์ง |
๐๏ธ ์์ ์ก์ถ | ๋ฐฉ์ก ์ค๋จ ๋ฐฉ์ง |
๐ค ๋ฐํ | ์ฌ๋ผ์ด๋ ๋ฐํ ์ค ์ ์ ๋ชจ๋ ๋ฐฉ์ง |
๐ฝ๏ธ ๋ฌด์ธ ์์ฐ | ์๋์ง ์์๋ ์์ฐ ํ๋ฉด ์ ์ง |
๐ ๊ฒฐ๋ก
์ด ์์ ํ๋ก๊ทธ๋จ ํ๋๋ฉด ์ปดํจํฐ๊ฐ ์ ํด ์ํ๋ก ๊ฐ์ฃผ๋๋ ๊ฑธ ๋ง์ ์ ์์ด ์ ๋ง ํธ๋ฆฌํฉ๋๋ค.
ํ๋ก๊ทธ๋๋ฐ ์ด๋ณด์๋ผ๋ ์ฝ๊ฒ ์ฌ์ฉํ ์ ์๋๋ก GUI๊น์ง ๊ตฌ์ฑํ์ผ๋, ์
๋ฌด๋ ์ค์ต ์ค ๊ผญ ํ ๋ฒ ์ฌ์ฉํด๋ณด์ธ์!
๐ ์ ์ฒด ์ฝ๋์ ์คํ ํ์ผ(.exe) ์์ฑ ๋ฐฉ๋ฒ์ ์ถํ ๊ณต์ ๋๋ฆด ์์ ์ ๋๋ค.