From b.ansems.de.vries at hccnet.nl Sat Dec 1 20:47:55 2007 From: b.ansems.de.vries at hccnet.nl (Ben Ansems de Vries) Date: Sat, 01 Dec 2007 20:47:55 +0100 Subject: [python-nl] time.sleep(3) en weergeven van image Message-ID: <4751BA6B.4090304@hccnet.nl> Een HTML-bijlage is verwijderd... URL: http://mail.python.org/pipermail/python-nl/attachments/20071201/d8be1b02/attachment.htm From Jack.Jansen at cwi.nl Sun Dec 2 00:58:34 2007 From: Jack.Jansen at cwi.nl (Jack Jansen) Date: Sun, 2 Dec 2007 00:58:34 +0100 Subject: [python-nl] time.sleep(3) en weergeven van image In-Reply-To: <4751BA6B.4090304@hccnet.nl> References: <4751BA6B.4090304@hccnet.nl> Message-ID: Ik ben niet echt bekend met wxPython, maar in het algemeen geldt dat je time.sleep() moet vermijden in een GUI-programma. Alles staat dan stil, en uit jou uitleg lijkt het erop dat in het geval van wxPython onder Windows XP zelfs het opnieuw tekenen van het window niet gebeurt. De gebruikelijke manier om iets op een later tijdstip te doen is om aan de GUI-eventloop te vragen of-ie je over een paar seconden een callback wil geven. Soms heeft dat de vorm van een event, dan zoek je iets in de trant van mainloop.ScheduleApplicationDefinedEvent(3), en wordt 3 seconden later je OnApplicationDefinedEvent() aangeroepen. Soms geef je ook gewoon de routine die je aangeroepen wilt hebben mee, dan zoek je iets als mainloop.ScheduleCalback(3, self.myShowNextPicture) en wordt die myShowNextPicture later aangeroepen. Hoe het in wxWindows werkt moet je zelf even in de documentatie opzoeken. Het grote voordeel hiervan is de gedurende die 3 seconden de user interface nog gewoon actief is, dus als je user bijvoorbeeld "quit" kiest stopt het programma ook meteen. On 1-Dec-2007, at 20:47 , Ben Ansems de Vries wrote: > Beste mensen, > > Ik ben betrekkelijk nieuw in Python en leer er iedere dag bij. Door > kleine programmaatjes te schrijven oefen ik met deze fantastisch taal. > > Bij het volgende probleem kan ik wat hulp gebruiken: > > Doel: Plaatje weergeven ====> pauze 3 sec. ======> Volgende > plaatje weergeven > > Probleem: zodra invoer waar is dan staat het programma 3 sec stil > en daarna is alleen het tweede plaatje te zien m.a.w programma gaat > in sleep voordat het eerste plaatje is > weergegeven . Zie programma code. > > Vraag: Waar gaat het mis? Is time.sleep(sec) hiervoor wel te > gebruiken? > > > Alvast bedankt, > > Ben > > Platform: Windows XP Media Center Edition > Program info: > Spe version 0.8.3.c > Python version 2.5.1 > wxPython version 2.8.6.1. > wxglade Version 0.6.1 > > > > #--------------- Gedeelte van de code----------------- > > def OnText(self, event): # wxGlade: MyFrame1. > > self.text_ctrl_1.SetMaxLength(1) > invoer = self.text_ctrl_1.GetValue() > letter = MyFrame1.letter > if invoer == letter: > self.label_2.SetLabel(letter) > self.text_ctrl_1.Hide() > > #eerste plaatje weergeven > > MyFrame1.Showbitmap(self,"smile.jpg") > > print "Debug: plaatje is geactiveerd" > > #wacht 3 seconden > > time.sleep(3) > > # laad het volgende plaatje > > MyFrame1.Showbitmap(self,"smile_surprised.jpg") > > > elif invoer =="": > print "invoer leeg" > > else: > MyFrame1.Showbitmap(self,"smile_surprised.jpg") > self.text_ctrl_1.SetValue("") > > event.Skip() > > def Showbitmap(self,bitmap): > i = wx.Image(bitmap,wx.BITMAP_TYPE_ANY) > b1 = wx.BitmapFromImage(i) > self.bitmap_1.SetBitmap(b1) > self.bitmap_1.Show() > _______________________________________________ > Python-nl mailing list > Python-nl op python.org > http://mail.python.org/mailman/listinfo/python-nl ------------- volgend deel ------------ Een HTML-bijlage is verwijderd... URL: http://mail.python.org/pipermail/python-nl/attachments/20071202/7753d1ee/attachment.htm From b.ansems.de.vries at hccnet.nl Sun Dec 2 13:33:24 2007 From: b.ansems.de.vries at hccnet.nl (Ben Ansems de Vries) Date: Sun, 02 Dec 2007 13:33:24 +0100 Subject: [python-nl] time.sleep(3) en weergeven van image In-Reply-To: References: <4751BA6B.4090304@hccnet.nl> Message-ID: <4752A614.9070404@hccnet.nl> Een HTML-bijlage is verwijderd... URL: http://mail.python.org/pipermail/python-nl/attachments/20071202/ff7160ab/attachment.htm