ALERT!
Click here to register with a few steps and explore all our cool stuff we have to offer!
Other languages

[Python] Simple ScreenBlocker

Submitted by ProjectMajin at Yesterday, 11:12 PM


[Python] Simple ScreenBlocker
101 Views
ProjectMajin's Avatar'
ProjectMajin
Offline
#1
WANT TO SUPPORT ME FOR FREE?
LEAVE A LIKE AND A REPO

CODE NO REPLY:

Code:
import sys
import ctypes
from tkinter import Tk, Label
from PIL import Image, ImageTk
import keyboard

BILD = "pic.jpg"
ZEIT = 10 # 0 for infinit long

win32 = ctypes.windll.user32 if sys.platform == "win32" else None

def vordergrund():
    if win32:
        try:
            win32.SetForegroundWindow(fenster.winfo_id())
            win32.BringWindowToTop(fenster.winfo_id())
        except:
            pass

def maus_aus():
    if win32:
        try: win32.ShowCursor(False)
        except: pass

def maus_an():
    if win32:
        try: win32.ShowCursor(True)
        except: pass

def blocken(e=None):
    print("muhahahahaha")
    return "break"

def ende(e=None):
    maus_an()
    fenster.destroy()

def loop():
    try:
        fenster.lift()
        fenster.focus_force()
        vordergrund()
    except:
        pass
    fenster.after(1, loop)

fenster = Tk()
fenster.configure(bg="black")
fenster.attributes("-fullscreen", True, "-topmost", True)
fenster.overrideredirect(True)
fenster.lift()

w, h = fenster.winfo_screenwidth(), fenster.winfo_screenheight()
img = Image.open(BILD).resize((w, h), Image.LANCZOS)
foto = ImageTk.PhotoImage(img)

label = Label(fenster, image=foto, bg="black")
label.pack(fill="both", expand=True)

tasten = ['Win', 'right windows', 'left ctrl', 'right ctrl', 'alt', 'shift', 'del']
for t in tasten:
    keyboard.block_key(t)

events = ["<Key>", "<KeyPress>", "<Button>", "<ButtonPress>", "<Motion>", "<Enter>", "<Alt-F4>", "<Control-Alt-Delete>", "<Alt_L>", "<Alt_R>"]
for ev in events:
    fenster.bind_all(ev, blocken)

fenster.protocol("WM_DELETE_WINDOW", blocken)
fenster.bind("<Escape>", ende)

maus_aus()

if ZEIT > 0:
    fenster.after(int(ZEIT * 1000), ende)

fenster.after(100, loop)

try:
    fenster.mainloop()
finally:
    maus_an()
JOIN MY DISCORD FOR MORE
0
Reply



Users browsing this thread: 2 Guest(s)