Qt-gui mit Konsolenprogramm verbinden

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Antworten
Trubinial Guru
User
Beiträge: 117
Registriert: Dienstag 7. April 2009, 13:40

Donnerstag 9. April 2009, 00:16

Hallo,
ich bin neu in der Python Programmierung :D und will ein von mir erstelltes Programm mit einer durch den qtdesigner erstellten GUI verbinden. Ich will aber, wenn möglich, nicht zu viel Hirnschmalz in das programmieren der GUI stecken. Sprich - am liebsten des weitgehenste mit dem gemütlichen qtdesigner machen. :D
Gibt es eine leichte Erklärung wie das mit den Signalen und Slots ist? Wie füge ich diese in mein Programm ein?

Vielen Dank für die Antworten schon mal im Voraus!

Mfg Jonny :D
burli
User
Beiträge: 1116
Registriert: Dienstag 9. März 2004, 18:22

Donnerstag 9. April 2009, 07:15

Am besten nimmst du Eric. Dort erstellst du dir eine Gui und lässt die von Eric anschließend compilieren. Das erstelle Modul kannst du anschließend in dein Programm einbinden und mit einem Programm verbinden.

Aber bitte keine Änderungen an dem GUI Modul von Hand vornehmen. Wenn du im Designer was änderst gehen die verloren
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Donnerstag 9. April 2009, 08:16

burli hat geschrieben:Dort erstellst du dir eine Gui und lässt die von Eric anschließend compilieren.
Das hatten wir doch schon so oft - ui-Dateien zu py-Dateien zu kompilieren ist in den meisten Fällen keine gute Idee.

(Davon abgesehen dass man dazu nicht Eric braucht sondern pyuic)
My god, it's full of CARs! | Leonidasvoice vs Modvoice
burli
User
Beiträge: 1116
Registriert: Dienstag 9. März 2004, 18:22

Donnerstag 9. April 2009, 08:39

Leonidas hat geschrieben:Das hatten wir doch schon so oft
Werd ich verpasst haben
Leonidas hat geschrieben: - ui-Dateien zu py-Dateien zu kompilieren ist in den meisten Fällen keine gute Idee.
warum? zu langsam? Oder überflüssig
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Donnerstag 9. April 2009, 08:51

Überflüssig (kann direkt geladen werden), unflexibel (generierten Code editieren ist nicht das wahre), lästig (man darf nicht vergessen bei Änderungen an der UI-Datei neu zu generieren).

Also alles in allem eben nicht empfehlenswert, wenn es die Möglichkeit gibt die Dateien so wie in jedem nennenswerten GUI-Toolkit auch, direkt zu laden.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
burli
User
Beiträge: 1116
Registriert: Dienstag 9. März 2004, 18:22

Donnerstag 9. April 2009, 09:00

Ist ein Argument. Wird in C++ ja eigentlich auch nicht anders gemacht
lunar

Donnerstag 9. April 2009, 09:17

Leonidas hat geschrieben:
burli hat geschrieben:Dort erstellst du dir eine Gui und lässt die von Eric anschließend compilieren.
Das hatten wir doch schon so oft - ui-Dateien zu py-Dateien zu kompilieren ist in den meisten Fällen keine gute Idee.
Normalerweise wäre ich ja deiner Meinung, aber man muss daraus kein Dogma machen ;) Der OP möchte weder viel denken, noch viel Arbeit da rein stecken, eric4 ist dann ein nettes Werkzeug, dass die meiste Arbeit abnimmt.
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Donnerstag 9. April 2009, 09:26

lunar hat geschrieben:
Leonidas hat geschrieben:
burli hat geschrieben:Dort erstellst du dir eine Gui und lässt die von Eric anschließend compilieren.
Das hatten wir doch schon so oft - ui-Dateien zu py-Dateien zu kompilieren ist in den meisten Fällen keine gute Idee.
Normalerweise wäre ich ja deiner Meinung, aber man muss daraus kein Dogma machen ;)
Daher auch das Wort "meistens". Und die Erklärung warum dies so ist.
lunar hat geschrieben:Der OP möchte weder viel denken, noch viel Arbeit da rein stecken, eric4 ist dann ein nettes Werkzeug, dass die meiste Arbeit abnimmt.
Ich habe nur gesagt, dass es nicht Eric ist der da Code generiert sondern ``pyuic``. Der Autor von Eric würde sich ja viel unnütze Arbeit machen wenn er selbst einen Codegenerator für ui-Dateien bauen würde.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Trubinial Guru
User
Beiträge: 117
Registriert: Dienstag 7. April 2009, 13:40

Donnerstag 9. April 2009, 12:02

Danke für die schnellen Antworten, aber leider habt ihr nicht genau das Thema getroffen, was ich gewollt habe :wink: . Ich benutze Eric und habe somit die .ui datei in eine Python datei umgewandelt.
Mein Problem ist, dass ich nicht wirklich ein gutes Tuzorial gefunden habe, mit dem man lernen kann, wie man diese Python Datei mit dem eigenen verbinden kann.
Als beispiel:
Ich habe einen Dialog gemacht, bei der ich einen Namen eingeben kann und enzweder mit OK bestätige und dieser name dann in eine Variable gespeichert wird oder einfach mit Abbrechen die Gui schließen kann.
Wie muss ich zum Beispiel den Button "pushButton1" mit dem designer einstellen und wie kann ich in meinem Python-Programm damit umgehen, was habe ich für Möglichkeiten?

Liebe Grüße

Jonny
burli
User
Beiträge: 1116
Registriert: Dienstag 9. März 2004, 18:22

Donnerstag 9. April 2009, 12:05

Kennst du das hier schon?
Benutzeravatar
Hyperion
Moderator
Beiträge: 7472
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Donnerstag 9. April 2009, 14:24

Trubinial Guru hat geschrieben: Ich habe einen Dialog gemacht, bei der ich einen Namen eingeben kann und enzweder mit OK bestätige und dieser name dann in eine Variable gespeichert wird oder einfach mit Abbrechen die Gui schließen kann.
Wie muss ich zum Beispiel den Button "pushButton1" mit dem designer einstellen und wie kann ich in meinem Python-Programm damit umgehen, was habe ich für Möglichkeiten?
Da vermischst Du doch Grundlagen von Python und PyQt! Da solltest Du einfach mal ein PyQt-Tutorial durcharbeiten und dir ggf. zusätzlich die Demos / Dokus von Qt angucken (Nicht von C++ abschrecken lassen, es geht dabei ja um Konzepte, nicht um Code!).

Die Frage wie ich einen Button erstelle, ggf. umbenenne und dann auf den Druck (Signals, Slots) reagiere (z.B. ein Textfeld auslesen) sind komplette Basics.
Antworten