messagescreen .. problem

Fragen zu Tkinter.
Benutzeravatar
powerslide
User
Beiträge: 51
Registriert: Freitag 10. Dezember 2004, 09:05
Wohnort: Erlangen
Kontaktdaten:

messagescreen .. problem

Beitragvon powerslide » Mittwoch 26. Januar 2005, 09:29

Hallo.. mal wieder :wink:

also.. eigentlich macht mein progrämmchen nun was ich will..
bis auf eine kleinigkeit..

und zwar..

ich hab in der gui einen kleinen messagescreen eingebaut..
im endeffekt nichts weiter als ein scrolledtext.

dieser wird über folgende funktion aktualisiert:

Code: Alles auswählen

    def set_out(self, text, opt):
        text = text + '\n--------------------------------------------------------------------------------------------------------------------------\n'
        self.ausgabe["state"] = "normal"
        if (opt == 'y'):
            self.ausgabe.delete(1.0,END)
        self.ausgabe.insert(END, str(text))
        self.ausgabe["state"] = "disabled"
        self.ausgabe.see(END)


nun hab ich aber das problem wenn ich set_out in einer anderen funktion aufrufe um statusausgaben zu machen, dann kommen die nicht schön nacheinander.. sondern alle auf einmal.. und immer erst dann wenn die funktion, welche set_out aufruft fertig ist .. oder bis eine messagebox kommt oder so..
kann man das irgendwie .. einfach :D handeln?

slide

den kompletten code findet ihr hier :
http://python.sandtner.org/viewtopic.php?p=14290#14290
How many people can read hex if only you and dead people can read hex?

There are 10 types of people in the world: Those who understand binary, and those who don't...
Benutzeravatar
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Beitragvon Dookie » Mittwoch 26. Januar 2005, 12:56

Hi powerslide,

update_idletasks() müsste da helfen:

Code: Alles auswählen

    def set_out(self, text, opt):
        text = text + '\n'+'-'*122+'\n'
        self.ausgabe["state"] = "normal"
        if (opt == 'y'):
            self.ausgabe.delete(1.0,END)
        self.ausgabe.insert(END, str(text))
        self.ausgabe["state"] = "disabled"
        self.ausgabe.see(END)
        self.ausgabe.update_idletasks()



Gruß

Dookie

Code: Alles auswählen

#!/usr/bin/env python
import this
Benutzeravatar
powerslide
User
Beiträge: 51
Registriert: Freitag 10. Dezember 2004, 09:05
Wohnort: Erlangen
Kontaktdaten:

Beitragvon powerslide » Mittwoch 26. Januar 2005, 13:10

woah.. der hit.. funzt :D 8) danke!
How many people can read hex if only you and dead people can read hex?



There are 10 types of people in the world: Those who understand binary, and those who don't...

Wer ist online?

Mitglieder in diesem Forum: Exabot [Bot], Kebap