Seite 1 von 1

insert text on the fly

Verfasst: Freitag 29. August 2008, 14:38
von rebeling
Hallo,

das Programm berechnet den Inhalt und wenn es fertig ist, wird
der komplette Inhalt mit insert in einem Textfeld dargestellt.

meine Frage: Gibt es eine Möglichkeit, dass in dem Moment, in dem
ein Teilergebnis fertig ist, dieses sofort in das Textfeld geschrieben wird?
anstatt immer zu warten???

Vielen Dank und Liebe Grüße,
Matthias

Verfasst: Freitag 29. August 2008, 15:15
von numerix
Na dann musst du halt immer, wenn ein Teilergebnis fertig ist, dieses in das Ausgabefeld schreiben ... :wink:

Wenn dir das nicht reicht: Zeig doch mal den entsprechenden Code und erläutere daran, was genau du erreichen möchtest.

Verfasst: Montag 1. September 2008, 14:46
von rebeling
mein code
ich weiß nicht genau, was ich mit pack machen soll, pack erzeugt ja das fenster ... ich kann ja nicht insert.pack machen oder?

Code: Alles auswählen

class WrApp(Frame):

    def erase(self): # clean Entry fields
        self.textfenster.delete('1.0',END)

    def createWidgets(self):   

     ...
        frm3 = Frame(root)
        frm3.pack(fill=X)        
        
        self.textfenster = ScrolledText(frm3, width=105, height=38, background='grey', relief= RIDGE, bd=1, font=('Helvetica', 15))
        self.textfenster.pack(side=LEFT, padx=23, pady=10)



def getx():
        ... 
        
        if x == 0:  # html code
            try:
                siteSoup = BeautifulSoup(htmlcode)        
            # HIER > es fügt erst alles ein, wenn es fertig ist?!    
            app.textfenster.insert(END, 'URL: '+inputurl + '\n' +siteSoup.prettify())
            except:
                app.textfenster.insert(END, '\n   your mistake try again!') 
...

root = Tk()
root.title('WrApp a')
app = WrApp(master=root)
app.mainloop()
app.destroy()
Vielen Dank und Liebe Grüße,
Matthias

Verfasst: Dienstag 2. September 2008, 23:03
von rebeling
eine möglichkeit ist
update()
in meinem Fall app.update() ... hab ich leider jetzt erst gefunden.
sorry.