>

wx.KeyEvent객체를 만들려고하는데wx.TextCtrl에서 키 누르기를 에뮬레이션해야합니다. 이벤트를 전파하고 싶지 않다면 (가능한 경우) 객체를 만드십시오. 이 방법이 있습니까?

wxpython.org의wx.KeyEvent페이지를 보았지만 유용한 정보를 찾지 못했습니다. 내 유일한 힌트는wx.Event객체를 만들어 원하는 매개 변수를 줄 수 있다는 것입니다.

편집: eventType=wx.EVT_KEY_DOWN 를 사용하여 이벤트 객체를 인스턴스화하려고했습니다. 하지만 서브 클래스/인스턴스화 할 수 없다는 예외가 발생합니다. 당연히 매개 변수를 전달하는 방법도 있습니다.

  • 답변 # 1

    wx.UIActionSimulator 를 사용하여 키, 텍스트 및 마우스 동작을 생성 할 수 있습니다  https://wxpython.org/Phoenix/docs/html/wx.UIActionSimulator.html

    keyinput = wx.UIActionSimulator()
    keyinput.Char(ord("z"))
    keyinput.Char(ord("\t"))
    
    

    'z'다음에 탭이있을 것입니다

    사용 가능한 조치 :

    > Char  Press and release a key.
    > KeyDown   Press a key.
    > KeyUp Release a key.
    > MouseClick    Click a mouse button.
    > MouseDblClick Double-click a mouse button.
    > MouseDown Press a mouse button.
    > MouseDragDrop Perform a drag and drop operation.
    > MouseMove Move the mouse to the specified coordinates.
    > MouseUp   Release a mouse button.
    > Text  Emulate typing in the keys representing the given string.
    
    

  • 이전 oracle - ORA-00980 동의어 번역이 PLSQL에서 더 이상 유효하지 않습니다
  • 다음 반응 모국어 변경은 즉시 영향을 미치지 않습니다