2012-07-12 11 views
0

사용자가 필요로하는 경우, 파이썬 위젯에서 이미지를 변경하려고합니다.gtk.image.set_from_file을 사용하여 이미지를 바꿉니다.

나는 GTK2의 +, 파이썬 2.7.3와 습지를 사용하고,이 내가

image = gtk.Image() 
image.set_from_file("MyImagePath.png") 
image.show() 

button = App.get_object('buttonExample') 
button.add(image) 

을하고있어 무엇이며,이 시도가 이미지

을 변경할 때 내가 무엇을 얻을 GtkWarning : GtkImage 유형의 위젯을 GtkAspectFrame에 추가하려고 시도하지만 GtkBin 서브 클래스로 GtkAspectFrame은 한 번에 하나의 위젯 만 포함 할 수 있습니다. 이미 예상대로 이미지가 제대로로드 GtkImage

에게 유형의 위젯을 포함하지만 이미지의 입력 경로를 변경하는 경우, 나는 버튼 이미지를 변경 싶지만,이 난 것이 아니다 점점.

나는 gtk.Image.clear()를 사용하려고하지만, 내가

로드와 이미지를 다시로드 할 수있는 좋은 방법이 있나요 (어쩌면 그냥 주위에 물건을 장난 IM) 버튼에서 사용할 수 없다고 단추?

은 들으 당신 하나가 새로 추가하기 전에 버튼에서 기존의 이미지를 제거해야

답변

1

는 (오류 메시지가 이것에 대해 매우 간단합니다), 또는 당신은 현재 이미지 변화 시도 할 수 :

button.get_child().set_from_file("MyImagePath.png") 
+0

이것은 정확히 내가 필요로하는 것입니다. 당신이 말했듯이 이미지의 클리어를 사용했고 버튼 이미지도 다음과 같이 청소했습니다 : 'App.get_object ('buttonExample '). remove (image) image.clear()' –

0

이것은 내가 필요한 것입니다. 말씀 드렸듯이 이미지에 선명도를 사용하고 버튼 이미지도 다음과 같이 청소했습니다.

App.get_object('buttonExample').remove(image) 
image.clear() 

도움을 주셔서 감사합니다.

관련 문제