2013-03-25 4 views
1

위젯 Pmw.ComboBox의 직접 편집을 사용하지 못하도록하는 방법을 찾고 있습니다. 회색으로 표시되고 사용할 수없는 콤보 상자가있는 entry_field=DISABLED 결과를 사용하는 위젯 구성 이 페이지 출력Pmw.ComboBox 위젯의 입력 필드 사용 안 함

 dropdownQOS = Pmw.ComboBox(parentWindow, 
      label_text = 'QOS: ', 
      labelpos = 'w', 
      selectioncommand = differentiateSettings, 
      scrolledlist_items = ("Selection1", "Selection2", "Selection3"), 
      listheight = 57, entry_width = 43) 
     dropdownQOS.selectitem(0, setentry = 1) 
     dropdownQOS.pack(anchor = 'n',fill = 'x', expand = 1, padx = 50, pady=5) 

답변

1

확인 : entryfield_entry_state=DISABLEDhttp://www.gossamer-threads.com/lists/python/python/63351이 콤보 '항목을 비활성화 너무 나를 위해 일한 다음 메뉴를 직접 편집 할 수 있습니다 내 코드입니다.

+0

감사합니다. 'entry_field = DISABLED'로 ComboBox 항목 상태를 구성하는 것은 똑같은 일을하지만 추가적으로 배경색을 변경하지 않고도 entry_bg을 회색으로 고정합니다. 그래도 계약 위반자는 아닙니다. –

+0

'entryfield_entry_state = DISABLED','entry_field = DISABLED' 그리고 둘 모두'DISABLED' 대신에''readoly'' 매개 변수로 여러분의 코드를 시도했습니다. ComboBox가 작동했고 입력 필드가 편집 할 수 없었습니다. 4 가지 경우에서 입력 필드의 색상 만 다릅니다. 콤보 상자가 다운되지 않으면 elswhere에서 사용할 수 없음을 의미합니다. (또는 Python, tkinter 또는 Pmw의 동일한 버전을 사용하지 않을 가능성이 있습니다. Py3.3, Tk8.5, Pmw2.0을 사용합니다.) – bardosd

+0

'entry_field'를''readonly''로 설정했습니다. 정확히 내가 찾고 있었던 것; 항목을 편집하는 옵션을 비활성화하지만 필드를 완전히 회색으로 표시하지 않습니다 ('DISABLED'사용과 비교). 시간 내 주셔서 감사합니다! –