ayant des problèmes à essayer de faire fonctionner le thread en python en utilisant le génial Appjar package.La fonction python appjar ne tourne pas
Le programme suivant doit compter dans une liste et mettre à jour une barre de progression simultanément. Je l'ai suivi le appjar documentation for threading, mais il est de retour dans la NameError: name 'percent_complete' is not defined
app.thread
(ligne 35), dans lequel vous êtes censé insérer la fonction params - mon code est ci-dessous:
from appJar import gui
import time
# define method the counts through a list of numbers, and updates the progress meter
def press(btn):
objects = [1,3,6]
total = len(objects)
current_object = 0
for i in objects:
print(i)
current_object += 1
current_percent_complete = (current_object/total) * 100
updateMeter(current_percent_complete)
time.sleep(1)
def updateMeter(percent_complete):
app.queueFunction(app.setMeter, "progress", percent_complete)
# create a GUI variable called app
app = gui("Login Window")
app.setBg("orange")
app.setFont(18)
# add GUI elements : a label, a meter, & a button
app.addLabel("title", "COUNTER")
app.setLabelBg("title", "blue")
app.setLabelFg("title", "orange")
app.addMeter("progress")
app.setMeterFill("progress", "green")
app.addButton("START COUNTING", press)
# put the updateMeter function in its own thread
app.thread(updateMeter, percent_complete)
# start the GUI
app.go()
je peux me débarrasser de l'erreur par la définition percent_complete
comme ceci:
from appJar import gui
import time
# define method the counts through a list of numbers, and updates the progress meter
percent_complete = 0
def press(btn):
...
Cependant, lorsque la charge de l'interface graphique et le bouton est enfoncé, il ne se visse pas. Au lieu de cela, il parcourt la liste, puis met à jour la barre de progression.
Quelqu'un a-t-il rencontré le même problème? n'importe quelle idée serait awesomely appréciée! Merci!