gpt4 book ai didi

python - 从我的应用程序关闭 Windows 10 控制台 "Mark"模式

转载 作者:行者123 更新时间:2023-11-28 22:31:48 27 4
gpt4 key购买 nike

我有一个用 Python 编写的控制台应用程序。 Windows 10 控制台的“标记”模式让我无休止地感到沮丧,因为用户在做一些像切换窗口这样简单的事情时不小心点击了应用程序。我有什么办法可以控制和阻止这种情况吗?

对于那些不知道标记模式的人来说,它是指用户在控制台窗口中选择一些文本。当程序接下来写入 stdout 时,整个程序暂停,这很烦人。

最佳答案

在 Windows 10 中使用鼠标的自动“标记”模式是先前版本的“快速编辑”模式。我相信唯一的区别是它现在默认打开。可以从代码中启用/禁用快速编辑模式:

import time
import win32console

ENABLE_QUICK_EDIT_MODE = 0x40
ENABLE_EXTENDED_FLAGS = 0x80


def quick_edit_mode(turn_on=None):
""" Enable/Disable windows console Quick Edit Mode """
screen_buffer = win32console.GetStdHandle(-10)
orig_mode = screen_buffer.GetConsoleMode()
is_on = (orig_mode & ENABLE_QUICK_EDIT_MODE)
if is_on != turn_on and turn_on is not None:
if turn_on:
new_mode = orig_mode | ENABLE_QUICK_EDIT_MODE
else:
new_mode = orig_mode & ~ENABLE_QUICK_EDIT_MODE
screen_buffer.SetConsoleMode(new_mode | ENABLE_EXTENDED_FLAGS)

return is_on if turn_on is None else turn_on

quick_edit_enabled = quick_edit_mode()
while True:
print('Quick edit is %s' % ('on' if quick_edit_enabled else 'off'))
time.sleep(3)
quick_edit_enabled = quick_edit_mode(not quick_edit_enabled)

关于python - 从我的应用程序关闭 Windows 10 控制台 "Mark"模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41409727/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com