기계의 그래픽 사용자 인터페이스에서 작업 중입니다. 메인 루프 밖에서 (gtk-lock 내부의 idle_add 함수를 사용하여) 메인 스레드에서 언제든지 다시 그릴 수있는 창에 콤보 박스를 사용합니다. 이것은 특정 버튼 (위젯이 아닌 실제 버튼)이 기계에서 눌 렸을 때 발생합니다. 콤보 박스가 열리는 동안 이런 일이 발생하면 Gtk-Warning이 발생합니다. 'WIDGET REALIZED FOR EVENT'오류가 발생하여 프로그램이 멈 춥니 다. Python gtk : 콤보 상자가 열려 있는지 확인하는 방법?
나는 코드를 추가하려고 :combo.set_active(-1)
while gtk.events_pending():
gtk.main_iteration()
을하지만이 문제가 해결되지 않았다.
나는 combo.is_open() 또는 combo.close()와 같은 기능을 찾고 있지만 존재하지 않는 것 같습니다. 콤보와 관련된 신호는 '변경', '이동 활성', '팝업'및 '팝 다운'이지만 첫 번째는 콤보에서 텍스트를 선택하고 다른 신호는 키 바인딩 신호 일 때만 전송됩니다.
콤보가 열려 있는지 (선택되어 있는지) 확인할 수있는 방법이 있습니까?
감사! 또한 문서에서'gtk_combo_box_popdown()'함수를 사용하여 콤보를 닫습니다. 그래서이게 내 문제를 해결해 .. –