是否可以禁用右键单击并关闭消息框 ctype python 上的所有内容?
Is it possible to disable the right click and close all on messagebox ctype python?
我有一段代码显示了在 python 中使用 ctype lib 实现的消息框。
我的问题是有没有办法在创建多个ctype消息框时取消全部关闭或右键单击?
def msgbox(self,hwnd,msg,thid,pid):
MB_OK = 0x0
MB_OKCXL = 0x01
MB_YESNOCXL = 0x03
MB_YESNO = 0x04
MB_HELP = 0x4000
ICON_EXLAIM=0x30
ICON_INFO = 0x40
ICON_STOP = 0x10
MB_TOPMOST=0x40000
MB_SYSTEMMODAL=0x1000
"""
HEX VALUE LINK
https://www.autoitscript.com/autoit3/docs/functions/MsgBox.htm
"""
writeLogs = WriteLogs(
pathLog = app_config['path_logs'] +"\"+strftime("%Y_%m_%d")+".log",
timedate = time.strftime("%m/%d/%Y %I:%M:%S %p")
)
writeLogs.appendLogA(msg)
ctypes.windll.user32.MessageBoxA(hwnd, msg+str(operatorMessage), "[Error]", MB_OK | ICON_STOP | MB_SYSTEMMODAL)
您可以发送win32con.WM_CLOSE
关闭消息框:
import win32con
ctypes.windll.user32.PostMessageA(hwnd, win32con.WM_CLOSE, 0, 0)
要禁用任务栏上的右键单击,您可以将消息框附加到没有图标的 window 上,这样它在任务栏上是不可见的(没有右键单击)。
import ctypes
import win32con
import win32gui
style = win32con.MB_OK
wc = win32gui.WNDCLASS()
wc.lpszClassName = "TaskbarDemo"
rclass = win32gui.RegisterClass(wc)
hwnd = win32gui.CreateWindow(rclass, "Taskbar Demo", style, \
0, 0, win32con.CW_USEDEFAULT, win32con.CW_USEDEFAULT, \
0, 0, None, None)
MessageBox = ctypes.windll.user32.MessageBoxA
MessageBox(hwnd, 'Message', 'Window title', 0)
编辑:
def main(name):
try:
...
wc.lpszClassName = name
...
调用它:
main("TaskbarDemo")
main("zefaz")
...
等等...
我有一段代码显示了在 python 中使用 ctype lib 实现的消息框。 我的问题是有没有办法在创建多个ctype消息框时取消全部关闭或右键单击?
def msgbox(self,hwnd,msg,thid,pid):
MB_OK = 0x0
MB_OKCXL = 0x01
MB_YESNOCXL = 0x03
MB_YESNO = 0x04
MB_HELP = 0x4000
ICON_EXLAIM=0x30
ICON_INFO = 0x40
ICON_STOP = 0x10
MB_TOPMOST=0x40000
MB_SYSTEMMODAL=0x1000
"""
HEX VALUE LINK
https://www.autoitscript.com/autoit3/docs/functions/MsgBox.htm
"""
writeLogs = WriteLogs(
pathLog = app_config['path_logs'] +"\"+strftime("%Y_%m_%d")+".log",
timedate = time.strftime("%m/%d/%Y %I:%M:%S %p")
)
writeLogs.appendLogA(msg)
ctypes.windll.user32.MessageBoxA(hwnd, msg+str(operatorMessage), "[Error]", MB_OK | ICON_STOP | MB_SYSTEMMODAL)
您可以发送win32con.WM_CLOSE
关闭消息框:
import win32con
ctypes.windll.user32.PostMessageA(hwnd, win32con.WM_CLOSE, 0, 0)
要禁用任务栏上的右键单击,您可以将消息框附加到没有图标的 window 上,这样它在任务栏上是不可见的(没有右键单击)。
import ctypes
import win32con
import win32gui
style = win32con.MB_OK
wc = win32gui.WNDCLASS()
wc.lpszClassName = "TaskbarDemo"
rclass = win32gui.RegisterClass(wc)
hwnd = win32gui.CreateWindow(rclass, "Taskbar Demo", style, \
0, 0, win32con.CW_USEDEFAULT, win32con.CW_USEDEFAULT, \
0, 0, None, None)
MessageBox = ctypes.windll.user32.MessageBoxA
MessageBox(hwnd, 'Message', 'Window title', 0)
编辑:
def main(name):
try:
...
wc.lpszClassName = name
...
调用它:
main("TaskbarDemo")
main("zefaz")
...
等等...