2013-03-25 3 views
0

버튼이없는 새 메시지 대화 상자를 만들려고합니다. 몇 가지 정보를 보여줄 것이며, 일부 함수가 실행 된 후에 프로그래밍 방식으로 닫는 데 문제가 있습니다. run()과 response() 함수에 대해 읽었으며 코드를 작성했습니다.PyGTK - 특정 시간 후에 MessageDialog를 표시하고 닫습니다.

def stop(): 
    md.response(0) 

md = gtk.MessageDialog(None, gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT, gtk.MESSAGE_QUESTION, gtk.BUTTONS_NONE, "Wait... computing...") 
print 'closing in 5 secs...' 
threading.Timer(5.0, stop).start() 
md.run() 
md.destroy() 

주 응용 프로그램 창을 닫은 후에 stop()이 실행됩니다. 위의 프로그램이 올바르게 작동하더라도 원하는대로 할 수 없습니다. 함수가 실행 된 후 메시지 대화 상자를 닫기위한 아이디어가 있습니까?

안부, theaded GTK 응용 프로그램을 만들 수있는 정말 힘든 일입니다

+0

사용자 지정 창 만들기 및 필요에 따라 조작하십시오. – Lixas

답변

1

을 mopsiok. 당신은 종종 죽은 자물쇠로 끝날 것입니다.

gtk의 문서에서 gtk.timeout_add을 확인하십시오.

+0

답장을 보내 주셔서 감사합니다. 그것은 작동하지만 gtk.timeout_add도 프로그램을 반복합니다. 어쨌든, 그것에 대해 알고 좋은,하지만 다른 방법으로 (정보 대화 상자를 표시하지 않고) 내 문제를 해결. – mopsiok