날먹을 위한 몸부림/QT (PySide6)

pyside6에서 윈도우 핫키 컨트롤 사용하기(공용 컨트롤)

프로그래밍하는 지팡이 2022. 8. 30. 00:42

pyside6에서 기본으로 제공해주는 QKeySequenceEdit에서 제공하지 않는 기능을 사용하거나

이전에 사용했던 사용자 경험때문에 컨트롤이 필요해서 작성하게 됐음

 

대부분의 환경에서는 QKeySequenceEdit와 같은 qt가 제공해주는 기능들을 사용하도록 하자


다음은 핵심 기능들임

 

  • 공용 컨트롤 사용을 위한 초기화 (InitCommonControlsEx)
  • 핫키 컨트롤 생성 (CreateWindowExW)
  • 핸들을 이용해서 qt 위젯과 연결 (createWindowContainer)
  • 핫키 컨트롤과 통신 (SendMessage)

 



핫키 컨트롤을 사용한 모습

핫키 컨트롤을 사용한 모습임

QKeySequenceEdit와 같이 키조합을 입력받을 수 있음

QKeySequenceEdit는 여러개의 키조합을 받을 수 있는데

핫키 컨트롤은 1개의 핫키 조합만 받을 수 있다

대신 단일 문자도 입력 받을 수 있음