[^] hide_topbar
This commit is contained in:
parent
7933ecf2c8
commit
cdb1f32de6
@ -1,7 +1,9 @@
|
||||
from ctypes import windll
|
||||
from threading import Thread
|
||||
from typing import Optional, Union, Tuple
|
||||
|
||||
from customtkinter import CTkToplevel, CTkProgressBar, CTkLabel, ThemeManager, CTkFont
|
||||
from win32gui import CreateRoundRectRgn, SetWindowRgn
|
||||
from loguru import logger as _logger
|
||||
|
||||
logger = _logger.bind(module="CTkLoadingBox", prefix="misc")
|
||||
@ -40,6 +42,12 @@ class CTkLoadingBox(CTkToplevel):
|
||||
|
||||
if hide_topbar:
|
||||
self.overrideredirect(True)
|
||||
# Округление окна
|
||||
hwnd = windll.user32.GetForegroundWindow()
|
||||
region = CreateRoundRectRgn(0, 0, 300, 300, 150, 150) # Радиус круга
|
||||
SetWindowRgn(hwnd, region, True)
|
||||
self.bind("<ButtonPress-1>", self.__start_move)
|
||||
self.bind("<B1-Motion>", self.__on_move)
|
||||
|
||||
self._running: bool = False
|
||||
self._progress = 0
|
||||
@ -59,6 +67,13 @@ class CTkLoadingBox(CTkToplevel):
|
||||
self.withdraw()
|
||||
self._req_events()
|
||||
|
||||
def __start_move(self, event):
|
||||
self.x = event.x
|
||||
self.y = event.y
|
||||
|
||||
def __on_move(self, event):
|
||||
self.geometry(f"+{event.x_root - self.x}+{event.y_root - self.y}")
|
||||
|
||||
def _req_events(self):
|
||||
event.register("loading.open", self.open)
|
||||
event.register("loading.close", self.close)
|
||||
|
Loading…
x
Reference in New Issue
Block a user