Python으로 작성된 콘솔 애플리케이션이 있습니다. Windows 10 콘솔의 "Mark"모드는 사용자가 창을 전환하는 것처럼 간단한 작업을하면서 실수로 응용 프로그램을 클릭하기 때문에 끝까지 실망 스럽습니다. 이것을 제어하고 멈출 수있는 방법이 있습니까?
Mark 모드를 모르는 사람들은 사용자가 콘솔 창에서 일부 텍스트를 선택하는 경우입니다. 프로그램이 다음에 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)
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다