Ladebildschirm weiterleitung (Frame Switch,...)

Fragen zu Tkinter.
Antworten
Wer112
User
Beiträge: 3
Registriert: Sonntag 7. Mai 2023, 16:15

Ich versuche eine GUI zu basteln, da ich Android (Java) Entwickler bin, bin ich daran an Oberflächen gewöhnt.
Habe viel angesehen. Möchte aber in Python das Designen erstmal erlernen.

Dafür möchte ich ein Fenster haben (Ladebildschirm), was nach paar Sekunden zu einem neuen Fenster geleitet wird. Ohne dass es 100 externe Fenster geöffnet werden.

Ich habe versucht im Internet was zu finden, leider fand ich überhaupt nichts.

Ich fand für die Anwendung die Möglichkeit per Bottons oder Schaltflächen zu navigieren, bedauerlicherweise nichts mit Ladebildschirm.

Gerne würde ich Informationen (Links) haben wollen, wo ich das erlernen kann, wie eine Weiterleitung funktioniert, ohne Schaltflächen und nach einer gewissen Zeit.

Das habe ich gefunden, würde dies in die KI im Admin Panel bzw. User Panel machenwollen...

Bin absoluter Python Anfänger:

https://www.youtube.com/watch?v=95tJO7XJlko

Für jede Hilfe bin ich sehr dankbar!
Benutzeravatar
__blackjack__
User
Beiträge: 13100
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Wer112: Vergiss das mit dem Ladebildschirm. Die wurden erfunden um Zeit zu überbrücken, die eine Anwendung *tatsächlich* für irgend etwas benötigt, nicht um dem Benutzer eine sinnlose Wartezeit auf zu drängen.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Sirius3
User
Beiträge: 17747
Registriert: Sonntag 21. Oktober 2012, 17:20

@Wer112: wenn Du absoluter Anfänger bist, solltest Du Dich auf das Wesentliche konzentrieren. Einen Ladebildschirm braucht niemand.
In Tkinter gibt es das Hauptfenster und man kann per tk.Toplevel noch weitere Fenster erzeugen. Wenn es also wirklich größere Mengen an Daten zu laden gibt, dann lädt man diese im Hintergrund und erst, wenn eine Aktion tatsächlich nicht durchgeführt werden kann, auf die der Anwender dann länger warten muß, blendet man ein Ladefenster mit Fortschrittsbalken ein. Aber um solche Nebensächlichkeiten kümmert man sich erst, wenn die eigentliche Funktionalität des Programms schon fertig ist.
Wer112
User
Beiträge: 3
Registriert: Sonntag 7. Mai 2023, 16:15

Sirius3 hat geschrieben: Mittwoch 17. Mai 2023, 10:37 @Wer112: wenn Du absoluter Anfänger bist, solltest Du Dich auf das Wesentliche konzentrieren. Einen Ladebildschirm braucht niemand.
In Tkinter gibt es das Hauptfenster und man kann per tk.Toplevel noch weitere Fenster erzeugen. Wenn es also wirklich größere Mengen an Daten zu laden gibt, dann lädt man diese im Hintergrund und erst, wenn eine Aktion tatsächlich nicht durchgeführt werden kann, auf die der Anwender dann länger warten muss, blendet man ein Ladefenster mit Fortschrittsbalken ein. Aber um solche Nebensächlichkeiten kümmert man sich erst, wenn die eigentliche Funktionalität des Programms schon fertig ist.
Das Ladefenster soll nur ein Logo anzeigen, die Version und das Copyright.
Diese Toplevel, ist das dann extern oder wird der Inhalt von der nächsten Page reingeladen?
Wo finde ich Informationen, bzzg. Toplevel ect.?

Also wäre es sinnvoller erstmal die Login Seite für User und Admin zu machen? Wie leide ich das weiter? Mit diesem Switch Frames?

Gibt es gute Videos, wie erklärt wird, was mit den self. und __inti__ , def beigebracht wird(Deutch)?
Benutzeravatar
__blackjack__
User
Beiträge: 13100
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Wer112 Das sind alles Informationen die üblicherweise unter „Hilfe → Über <Programmname>“ zu finden sind.

`Toplevel` ist ein eigenes Fenster.

Python und dessen Standardbibliothek hat eine Dokumentation. Somit auch das `tkinter`-Modul. Die Dokumentation für das Modul direkt ist nicht besonders umfangreich, weil das ja nur eine Anbindung an Tk/Tcl ist. Aber in der Dokumentation wird auf einen ganzen Haufen externer Dokumentation verwiesen.

Ich würde an Deiner Stelle aufhören bei einer GUI-Anwendung in ”Seiten” zu denken. Pack die Anmeldung einfach in einen modalen Dialog und gut ist. Schon braucht man nichts mehr irgendwie auf andere Seiten weiterzuleiten.

Für die Python-Grundlagen sollte man mal das Tutorial in der Python-Dokumentation durchgarbeitet haben. Und Englisch können oder lernen, denn ohne wird man auf Dauer Probleme bekommen. Siehe auch „It's english, get over it”.

Das mit `self`, `__init__`, und ``def`` sollte von Java kommend grundsätzlich kein so grosses Problem darstellen. `self` ist ``this``, nur eben explizit immer erforderlich. `__init__()` initialisiert das Objekt, ist also so etwas wie der Konstruktor in Java (wobei es in Python einen *echten* Konstruktor gibt, der `__new__()` heisst, aber nur sehr selten selbst geschrieben wird), und ``def`` ist das Schlüsselwort um Funktions- und Methodendefinitionen einzuleiten.

Dran denken: Python is not Java. Und auch sinnvoll zu lesen ist der Style Guide for Python Code.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Antworten