Ich bin wieder mit einem anderen Python-Problem. Vor kurzem schrieb ich ein konsolenbasiertes Programm, das Statistiken von einem Bitcoin Miner in Ihrem lokalen Netzwerk zieht. Ich habe beschlossen, dass ich es in ein GUI verwandeln möchte, und wähle eine Kombination aus EasyGUI und Tkinter für mein Programm.Python Tkinter Label Refresh Woes
Meine Eingabefelder (ip, Bildwiederholfrequenz, asischer Typ) verwenden EasyGUI, um Codezeilen zu speichern, da Tkinter viel mehr Schreibvorgänge benötigt, um dasselbe zu erreichen. Meine tatsächliche Ergebnisseite wird jedoch mit Tkinter geschrieben, da ich die angezeigten Daten in einem benutzerdefinierten Intervall aktualisieren kann.
Mein Problem ist das: Ich hatte mein Programm glücklich ausgeführt, und dann ein paar kleine ui zwickt (Titel, Schriftart, etc) und jetzt nach meinem letzten Kompilieren (mit Pyinstaller) habe ich die Statistiken (Etiketten) wird überhaupt nicht aktualisiert. Ich habe jetzt unzählige Male über meinen Code geschaut und finde nicht heraus, was die Stats davon abhält, sich in den definierten Intervallen zu verändern.
Ich hoffe, jemand mit einem frischen Paar Augen kann mir helfen, meinen dummen Fehler zu finden, wie es vor diesen kleinen Ergänzungen perfekt lief.
Heres eine abgespeckte Version, die noch läuft und produziert das gleiche Problem:
import Tkinter as tk
from pycgminer import CgminerAPI
cgminer = CgminerAPI()
cgminer.host = 192.168.x.x
summary = cgminer.summary()
update = 1000
def L1(label):
def hashrate():
msg = "Your current GH/S = "
speed = msg , summary['SUMMARY'][0]['GHS 5s']
label.config(text=speed)
label.after(update, hashrate)
hashrate()
root = tk.Tk()
root.title("Eyes On Miner GUI V0.2")
label = tk.Label(root)
label.pack()
L1(label)
root.mainloop()
Voll Code auf Pastebin, falls Sie möchten, um zu versuchen, es selbst zu laufen. (Python 2.7) Full Code
Bitte lesen Sie http://www.stackoverflow.com/help/mcve. Sie können diesen Code wahrscheinlich auf etwa 10% seiner Größe bearbeiten und trotzdem das Problem darstellen, das Sie haben. –
Nein, Links zu einer anderen Website sind verpönt. Wenn Sie diesen Code in der Zukunft entfernt oder geändert haben, würde dies die Frage unterbrechen. –
Es ist in Ordnung, den Link einzuschließen. Gib hier einfach genug Code ein, dass es nicht benötigt wird. – zondo