Repost: Text not showing up
Simone
dezmodue at gmail.com
Mon Oct 17 03:52:01 EDT 2005
Simone wrote:
>Hi all, I am new to python and trying to write a simple GUI that would
>call 2 growisofs processes (dvd burning) at the same time, and retrive
>the exit code to be printed on a text box (couldn't find any program
>that could use multiple dvd burners, not even k3b). Excuse me if this is
>really a simple problem, but two days of googling didn't help.
> The program is really simple, I developed the GUI using glade and it
>works.
>The only thing I would like to improve is that I'd like it to show in
>the text boxes messages like "Waiting for use input" or "Burning dvd
>please wait", but it looks like even though I don't have any error, the
>message won't show up until the burning process is finished (showing
>either "burning successfully" or "an error occurred").
>I am not sure I made myself clear on this, but I will post the relevant
>code trying to explain it:
>
>import os, sys
>import gtk.glade
>
>class DVD:
>
>
> def __init__(self):
> print "Initializing the Graphic User Interface: This may take
>some time"
> self.xml=gtk.glade.XML("./dvd2.xml")
> self.window=self.xml.get_widget("dvd")
> self.xml.signal_connect('on_quit_clicked', self.Quit)
> self.xml.signal_connect('on_burn_clicked', self.Burn)
>
>self.OrdKeys=["comboentry1","entry1","spinbutton1","entry2","esitotext","esitotext1"]
># here esitotext is the box I want the text to show up
>
>
>
> def Quit(self, *args):
> gtk.mainquit()
>
> def Burn(self, *args):
>
> comand=""
> comand2=""
>
> name=self.xml.get_widget("entry1").get_text() #name
>for the dvd
> path=self.xml.get_widget("comboentry1").get_text() #path to
>dvd AUDIO_TS and VIDEO_TS
> num=self.xml.get_widget("spinbutton1").get_text() #chosing
>the number of dvd to burn
> pub=self.xml.get_widget("entry2").get_text()
>#publisher
> self.xml.get_widget("esitotext").set_text("Waiting for
>input") # THIS NEVER SHOWS UP
>
>
> dvd1="/dev/hda" # this is the first dvd
>burner, edit as needed
> dvd2="/dev/hdc" # this is the second dvd
>burner, edit as needed
>
>
>
> comand+="growisofs -dvd-compat -Z "+dvd1+" -dvd-video -V
>"+name+" -publisher "+pub+" "+path
> comand2+="growisofs -dvd-compat -Z "+dvd2+" -dvd-video -V
>"+name+" -publisher "+pub+" "+path
>
>
> if num == "1":
> self.xml.get_widget("esitotext").set_text("Burning the dvd,
>please wait") # THIS NEVER SHOWS UP, unless i have an error and
>the program
>
> # quits
>before executing the command
> self.xml.get_widget("esitotext").show()
> # don't know if this is correct,
>but it doesn't work either
> f = os.popen(comand, 'r')
> line = f.readline()
>
> error_in_prog = f.close()
> if error_in_prog:
> error=str(error_in_prog)
> self.xml.get_widget("esitotext").set_text("An error
>occurred. Burn not completed") # THIS COMES UP as it should
> self.xml.get_widget("esitotext").show()
> else:
> self.xml.get_widget("esitotext").set_text("Burn
>completed successfully") # THIS COMES UP as it should
> self.xml.get_widget("esitotext").show()
>
>
>if __name__=='__main__':
> main=DVD()
> gtk.main()
>
>
>Any comment, help, url, really appreciated.
>
>Have a nice day
>Simone
>
>
>
>
>
More information about the Python-list
mailing list