चल रहा है मैं पाइथन में स्क्रिप्ट बना रहा हूं, जो बाश के साथ सहयोग करता है। जब मैं सभी खोज विकल्प सेट करता हूं और खोज बटन दबाता हूं, तो मैं progress bar
के साथ पॉपअप विंडो दिखाना चाहता हूं, जो खोज पूरा होने पर गायब हो जाएगा। मैं popup.show()
द्वारा खोलता हूं और जब तक मैं पॉपअप बंद नहीं करता तब तक कोई फ़ंक्शन निष्पादित नहीं होता है। तो इस समस्या को हल करने के लिए कैसे?pygtk दो खिड़कियां, पॉपअप और मुख्य
नियंत्रक वर्ग में:
def search(self, widget):
cmd = "find " + self.model.directory + " -name \"" + self.model.name + "\"" + " -perm -" + str(self.model.mode)
if self.model.type is not None and self.model.type != '':
cmd += " -type " + self.model.type
if self.model.owner is not None:
cmd += " -user " + self.model.owner
if self.model.days is not None:
cmd += " -mtime -" + str(self.model.days)
self.progress = SearcherProgressBar()
output = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE)
out = output.stdout.read().strip()
array = string.split(out, '\n')
self.list = list()
self.progress.label = "sdsds"
for value in array:
self.add_to_list(value)
#self.progress.popup.destroy() # when I uncomment, popup never appears
self.view.treestore.clear()
self.add_to_tree(self.list, None)
self.view.expand_item.set_sensitive(True)
प्रगति बार कक्षा में:
class SearcherProgressBar:
def __init__(self):
self.popup = gtk.Window(gtk.WINDOW_POPUP)
vbox = gtk.VBox()
self.popup.add(vbox)
self.popup.set_size_request(500,100)
self.label = gtk.Label("Searching...")
vbox.pack_start(self.label, True, True, 0)
self.popup.connect("destroy", self.dest)
self.popup.show_all()
def dest(self, widget, data=None):
self.popup.destroy()
return False
अपने कोड बनाने [SSCCE - लघु, स्व निहित, सही (compilable), उदाहरण] (http://sscce.org/)। हम आपके प्रश्न में आपके पास कोड नहीं चला सकते हैं। वे सिर्फ आपके आवेदन के हिस्से के टुकड़े हैं। –