Ein frohes Weihnachtsfest an Alle,
ich möchte eine Anwendung mit Python und PyQt5 schreiben. Das Problem bei mir liegt in dem Fenster, das ich erstellen möchte. Es sollen mehrere Frames parallel nebeneinander stehen. Diese Frames haben alle den gleichen konstanten Inhalt, unterscheiden sich aber in den variablen Inhalte. Genaugenommen handelt es sich um eine Wettervorhersage.
Mein Problem:
Wie erstelle ich nun das Design?
QtDesigner: wie spreche ich die einzelnen Felder (label_1, label_2, ...) in Python an?
Python: in einer Schleife, wie positioniere ich die einzelnen Elemente richtig?
Könnt Ihr mir ein wenig auf die Sprünge helfen?
Danke für Eure Hilfe und Tipps.
Bis dann ...
MfG
Günter
Window mit mehreren gleichartigen Frames
Mir ist durch diese Beschreibung nicht wirklich klar geworden, was du willst.
Generell kannst du das mit dem Designer machen & durch die Vergabe von sinnvollen Namen zb „montag_temperatur“ ansprechen via findChild auf dem obersten Widget.
Generell kannst du das mit dem Designer machen & durch die Vergabe von sinnvollen Namen zb „montag_temperatur“ ansprechen via findChild auf dem obersten Widget.
- __blackjack__
- User
- Beiträge: 13077
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@niederrheiner: Das ist so ein Fall wo ich wahrscheinlich Designer und dynamisch durch Code erstellte Widgets mischen würde. Also beispielsweise die GUI in der die Frames für die Tage platziert werden sollen mit einem Frame als Platzhalter für die Stelle wo die Tage hin sollen im Designer erstellen und das Widget für einen Tag auch im Designer erstellen, um im Code das letztere dann sieben mal erstellen und in den Platzhalter einbauen. Für das Tageswidget dann `uic.loadUiType()` verwenden, denn das soll beim Laden ja nicht schon ein Exemplar von dem Widget werden, sondern eine Klasse die man beliebig oft aufrufen kann um weitere Widgets von diesem Typ zu erstellen.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
-
- User
- Beiträge: 30
- Registriert: Montag 7. Januar 2013, 11:52
@__blackjack__: Danke für Deine Antwort. Wenn ich Dich richtig verstanden habe, erstelle ich im QT-Designer eine Form (Window) in der nur die n-Frames als Platzhalter stehen(qframe.tag_1, qframe.tag_2, ...) und diese Form wird dann per Import in das Pythonprogramm geladen. Desweiteren erstelle ich eine Form mit allen erforderlichen Elementen eines Tages(Temperatur, Luftfeuchtigkeit, ...) und lade dies nur als Type ins Pythonprogram).
Kann ich dann die einzelnen Frames(Tage) so füllen(Pseudocode)?:
Ist das in etwa das was Du geschrieben hast?
Ein frohes Neues Jahr wünscht
Günter
Kann ich dann die einzelnen Frames(Tage) so füllen(Pseudocode)?:
Code: Alles auswählen
for (i=1;i<=n;i++)
qframe.tag_(i).temp = 16°
...
...
Ein frohes Neues Jahr wünscht
Günter
- __blackjack__
- User
- Beiträge: 13077
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@niederrheiner: Keine Platzhalter für die einzelnen Tage sondern nur ein Platzhalter für alle Tage. Die Frames für die Tage steckst Du im Programm dann einfach in eine Liste wenn Du sie erstellst.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman