위젯이있는 GTK 창이 있습니다. 그곳에는 모두 동일한 activate
신호 처리기가있는 확장기가 있습니다. 이 핸들러에서 위젯 오브젝트의 이름을 얻고 싶습니다.객체 이름 얻기
def exItem_activated (self, widget, data=None):
for i in range (0, 15):
self.builder.get_object ('exItem' + (str)(i + 1)).set_expanded (False)
widget.expanded = True
print widget.name
widget.name
그러나 작동하지 않습니다. AttributeError: 'Expander' object has no attribute 'name'
.
기본적으로 expander2를 클릭하면 "expander2"를 문자열로 가져 오려고합니다. expander14를 클릭하면 "expander14"문자열을 가져 오려고합니다. 이 일을 할 수있는 방법이 있습니까?
(쉽게) 수행 할 수 없다면 어떤 위젯을 클릭했는지 알 수있는 다른 속성을 얻을 수 있으면 받아 들일 수 있습니다. 대응 방법은 지금까지 내가 이해 get_name()
라고
** 이름 ** 대신 ** 유형 ** 개체를 출력하는 것으로 보입니다. * GtkExpander *는 어떤 버튼이 클릭되었는지에 관계없이 출력합니다. – RobinJ
@RobinJ :이 gtk 인터페이스는 어떻게 구성되어 있습니까? 빈틈없이 또는 수동으로 건설됩니까? –
Glade ------------- – RobinJ