Python GUI Tkinter Buttons blinken bei laufender Akutalisierung?

Hallo,

ich möchte mit Phyton und der Bibliothek Tkinter eine GUI für ein Kartenspiel programmieren.

Für das Kartenspiel müssen ständig neue Karten geladen werden.

Das heißt, es wird zum Beispiel andauernd überprüft wie viele Karten die Spieler in der Auslage und in der Hand haben und dementsprechend werden dann Labels und Buttons generiert.

Die Idee ist, einfach laufend die GUI in gewissen Abständen (zum Beispiel einige Dutzend Millisekunden) zu aktualisieren.

Wenn ich das mache blinken die Labels und Buttons aber immer auf.

Nach Recherche soll das daran liegen, dass sie immer wieder in zu kurzen Abständen neu erstellt werden.

Man könnte die GUI natürlich immer nur dann neu erstellen lassen, wenn tatsächlich im Spiel etwas passiert.

Das passiert aber andauernd, weswegen es besser ist, einfach laufend die GUI zu aktualisieren.

Gibt es dafür noch eine andere Methode (Zum Beispiel PyGame anwenden)?

Hier ein Minimalbeispiel:

class DynamicInterfaceApp:
  def __init__(self):
    self.root = Tk()
    self.root.geometry("1000x500")
    self.update_interface_periodically()
  
  def update_interface(self):
    self.my_frame= Frame(self.root, bg="red")
    self.my_frame.place(x=0, y=0, relwidth=1, relheight=1) 
    self.my_button = Button(self.my_frame)
    self.my_button.place(x=0, y=0, width=50, height=50)
   
  def update_interface_periodically(self):
    self.update_interface()
    self.root.after(25, self.update_interface_periodically)

app = DynamicInterfaceApp()
app.root.mainloop()
App, Code, Programmiersprache, Python, Pygame, Tkinter
Zählt das als "Social Good"?

Hallo.

Ich mache bei einem kleinem Hackathon mit, einfach mal um mich da bisschen auszuprobieren (naja, und 200€ Preisgeld wären auch ganz interessant).

Bei dem Hackathon geht es um Social Good, also Apps entwickeln die auch wirklich helfen und nicht unbedingt ein Spiel das In-App Käufe hat.

Zu meiner Idee. Ich hatte als Kind (und jetzt auch jüngere Freunde von mir) immer das gleiche Problem. Ich weiß, Luxusprobleme usw., aber das ist nun mal so, wenn man jünger ist.

Man wollte mit seinen Freunden Minecraft spielen, aber es gab immer Probleme dabei, einen kostenlosen anständigen Server zu finden. Es gab immer ein paar Probleme, z.B.:

  • Max ... Spieler
  • Keine Plugins
  • Werbung
  • Max ... Welten
  • Keine Mods

Usw., immer die gleiche kacke. Und als Kind hatte man auch kein Geld, um sich mal für 10€/Monat nen Server zu holen.

Ich dachte jetzt an P2P Minecraft, ABER nicht so, wie man es kennt. Sondern einer ist der Host und generiert die Server Files, dann geht das ganze auf Google Drive und jeder andere Peer mit der Google Drive URL kann eben diesen Server bei sich lokal Spiegeln und sich mit den Peers für Live Änderungen verbinden.

Für die Noobies, dass heißt man könnte alleine und gleichzeitig, auf dem gleichen Server spielen, ohne das es einen echten Minecraft Server der irgendwo rum steht, gibt. Und der Vorteil zu normalen P2P ist eben, dass nicht irgendjemand online sein muss, damit man spielen kann. Es ist eigentlich ein vollwertiger Minecraft Server, abgesehen von paar Sicherheitsproblemen, aber da kann man auch noch was bauen (Validierung mit Daten auf Google Drive bei Actions z.B.).

Jetzt ist meine Frage, kann man das als Social Good sehen? Ich schwanke da irgendwie ein bisschen, zum einem hilft es vielen Kindern und Jugendlichen, aber irgendwie ist es halt auch etwas ... banal.

Wie seht ihr das? Und falls ihr die Idee nicht gut findet (für den Hackathon zumindest), was würdet ihr für Apps/Webseiten/.... vorschlagen?

LG

Spiele, PC, Computer, Software, App, Technik, Webseite, programmieren, Soziale Netzwerke, Gaming, Minecraft, Gamer, Good, Herausforderung, Ideen, P2P, Social, Softwareentwicklung, Soziales, Challenge, Competetive, Minecraft Java Edition

Meistgelesene Beiträge zum Thema App