2013-07-31 3 views
1

메인 윈도우의 프레임에 2 개의 treewidget이 있습니다. 2 개의 treewidget에 대해 두 가지 다른 컨텍스트 메뉴 옵션을 어떻게 가질 수 있습니까? treewidgets에 대한 오른쪽 클릭 옵션의 개별 세트가 필요합니다. 미리 감사드립니다.컨텍스트 메뉴 옵션이 다른 PyQT 트레 위젯

답변

0

모든 QWidget에는 contextMenuPolicy이라는 컨텍스트 메뉴가 요청 될 때 수행 할 작업을 정의하는 속성이 있습니다. 필요한 작업을 수행하는 가장 간단한 방법은 다음과 같습니다.

  1. 원하는 방법을 호출하는 QAction 개체를 만듭니다.
  2. widget.addAction()
  3. 전화예요 widget.setContextMenuPolicy(QtCore.Qt.ActionsContextMenu)

를 사용하여 트리 위젯 이러한 작업을 추가합니다. 위젯의 상황에 맞는 메뉴에는 추가 한 작업이 포함됩니다.

+0

고마워. 전체 위젯을 사용하지 않고 트리 위젯의 항목에 대한 컨텍스트 메뉴를 가질 수 있습니까? –

+0

빈 공간에 컨텍스트 메뉴가 필요하지 않습니다. 위젯의 항목에 필요합니다. 메뉴를 선택한 경우 선택한 목록 항목을 읽으려고합니다 (확인란 항목이있는 경우 checkstate를 사용하여 확인합니다). –

+0

확실하지 않습니다. 항목은 QTreeWidgetItem이며이 클래스는 위젯이 아니므로 컨텍스트 메뉴 작업을위한 기본 제공 메소드가 없습니다. – AlexVhr