Warum nicht Qt Creator?

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Alfons Mittelmeyer
User
Beiträge: 1715
Registriert: Freitag 31. Juli 2015, 13:34

Freitag 25. August 2017, 16:38

Ich habe hier schon des öfteren gelesen, dass man den Qt Designer nehmen soll und den Qt Creator nicht. Warum das?
BlackJack

Freitag 25. August 2017, 16:45

@Alfons Mittelmeyer: Was willst Du denn machen? Eine GUI grafisch entwerfen oder ein C++-Programm schreiben? Je nach dem nimmt man dann halt das eine oder das andere.
__deets__
User
Beiträge: 4019
Registriert: Mittwoch 14. Oktober 2015, 14:29

Freitag 25. August 2017, 16:51

Der Creator hat auch eine Moeglichkeit den Designer zu starten (oder benutzt denselben Code, ist ja alles Qt). Das ist aber finde ich eher aetzend geloest, weil es die nutzbare Flaeche viel kleiner macht - denn die ganzen Projekt-Zonen drumrum bleiben bestehen.

Genauso wie bei Xcode, als die den InterfaceBuilder eingebaut haben. War vorher besser.
Alfons Mittelmeyer
User
Beiträge: 1715
Registriert: Freitag 31. Juli 2015, 13:34

Freitag 25. August 2017, 17:09

__deets__ hat geschrieben:Der Creator hat auch eine Moeglichkeit den Designer zu starten (oder benutzt denselben Code, ist ja alles Qt). Das ist aber finde ich eher aetzend geloest, weil es die nutzbare Flaeche viel kleiner macht - denn die ganzen Projekt-Zonen drumrum bleiben bestehen.
Aber man kann dann statt diesen XML Files auch QML verwenden.
__deets__
User
Beiträge: 4019
Registriert: Mittwoch 14. Oktober 2015, 14:29

Freitag 25. August 2017, 17:13

Das hat aber nix mit dem Designer zu tun. Und auch nicht mit dem Creator (ich arbeite beruflich mit QML, den Creator benutzt hier niemand).

QML ist nochmal seine komplett eigene Welt. Vielleicht findet die mal Eingang in den Designer, aber akut ist es das nicht.
Alfons Mittelmeyer
User
Beiträge: 1715
Registriert: Freitag 31. Juli 2015, 13:34

Freitag 25. August 2017, 19:59

__deets__ hat geschrieben:Das hat aber nix mit dem Designer zu tun. Und auch nicht mit dem Creator (ich arbeite beruflich mit QML, den Creator benutzt hier niemand).

QML ist nochmal seine komplett eigene Welt. Vielleicht findet die mal Eingang in den Designer, aber akut ist es das nicht.
Ich habe mich bis jetzt noch nicht bzw. noch kaum mit Qt beschäftigt. Aber weder mit dem Qt Designer noch mit dem Qt Creator komme ich recht zurecht. Da mache ich etwa eine Combobox und mache Texteinträge. Aber wenn ich dann im Qt Designer oder Qt Creator dann auf die Combobox drücke, dann tut sie nichts. Das heißt sie geht nicht auf und zeigt nicht meine Einträge. Müßte ich da irgend etwas Besonderes auswählen, damit sie das tut?
jerch
User
Beiträge: 1630
Registriert: Mittwoch 4. März 2009, 14:19

Freitag 25. August 2017, 20:42

@Alfons Mittelmeyer:

QtCreator ist super als IDE für C++ basierte Qt-Projekte inklusive Buildumgebung. Dann aber eher old-school ohne QML, QML sucks big time in QtCreator. Für Python ist QtCreator eher ungeeignet, da es keine goodies für typische Pythonentwicklungsaufgaben mitbringt. Der Pythonsupport geht nicht über Editor-Highlightning hinaus.
Alfons Mittelmeyer
User
Beiträge: 1715
Registriert: Freitag 31. Juli 2015, 13:34

Freitag 25. August 2017, 21:46

jerch hat geschrieben:Für Python ist QtCreator eher ungeeignet, da es keine goodies für typische Pythonentwicklungsaufgaben mitbringt. Der Pythonsupport geht nicht über Editor-Highlightning hinaus.
Ich hatte aber gesehen, dass es keineswegs so ist, dass man in Python eine QML Anwendung startet und das war es. Sondern dass es doch Interfaces zu Python gibt.

Hiedr etwa wird in 'Ausgabe über Python und PyQt5' auf QML Widgets in Python zugegriffen. Müßte dann wohl auch Callback Anbinding möglich sein: http://vibora.de/2016/12/kleine-einfueh ... d-qml.html

In QML kann man auch Javascript Code mit reinschreiben, Python Code natürlich nicht. Woanders kann man das aber genauso wenig.

Und dennoch scheint es gar ein Interface von Javascript zu Python geben, sodass man sogar in das QML File eine Python Anbindung reinschreiben kann. Hier werden dann sogar Python Funktionen oder Methoden von Javascript aus aufgerufen;
https://wiki.python.org/moin/PyQt/QML%2 ... 20function
jerch
User
Beiträge: 1630
Registriert: Mittwoch 4. März 2009, 14:19

Freitag 25. August 2017, 22:29

@Alfons Mittelmeyer:
Und was hat das jetzt mit der Benutzbarkeit des QtCreators für Pythonprojekte zu tun?
Alfons Mittelmeyer
User
Beiträge: 1715
Registriert: Freitag 31. Juli 2015, 13:34

Freitag 25. August 2017, 22:33

jerch hat geschrieben:@Alfons Mittelmeyer:
Und was hat das jetzt mit der Benutzbarkeit des QtCreators für Pythonprojekte zu tun?
Wenn es über QML diverse Schnittstellen zu Python gibt, dann ist der Qt Creator doch gut für Python Projekte einsetzbar, oder nicht?
jerch
User
Beiträge: 1630
Registriert: Mittwoch 4. März 2009, 14:19

Freitag 25. August 2017, 22:41

@Alfons Mittelmeyer:

Logik 6 setzen.

Gegeben:
jerch hat geschrieben:... QML sucks big time in QtCreator. ...
jerch hat geschrieben:Für Python ist QtCreator eher ungeeignet, da es keine goodies für typische Pythonentwicklungsaufgaben mitbringt. Der Pythonsupport geht nicht über Editor-Highlightning hinaus.
Daraus liest Du:
Alfons Mittelmeyer hat geschrieben:Wenn es über QML diverse Schnittstellen zu Python gibt, dann ist der Qt Creator doch gut für Python Projekte einsetzbar, oder nicht?
Ehm eher Letzteres - also "oder nicht".
Alfons Mittelmeyer
User
Beiträge: 1715
Registriert: Freitag 31. Juli 2015, 13:34

Freitag 25. August 2017, 23:17

jerch hat geschrieben:@Alfons Mittelmeyer:

Logik 6 setzen.

Gegeben:
jerch hat geschrieben:... QML sucks big time in QtCreator. ...
Meinst Du damit, dass die QML option im QtCreator etwas lahm ist. Ist sie in der Tat. Das muss aber nicht heißen, dass dann auch QML lahm ist. Oder weißt Du ein besseres Tool für QML?
jerch hat geschrieben:Für Python ist QtCreator eher ungeeignet, da es keine goodies für typische Pythonentwicklungsaufgaben mitbringt. Der Pythonsupport geht nicht über Editor-Highlightning hinaus.
Also Zugriff über Widget IDs gibt es doch. QtPython und ist aber mit den XML Files besser integriert, weil da gleich Attribute erzeugt werden.

Aber Goodies gibt es doch, das sind die Javascript nach Python Schnittstellen.

Und dann ist da noch, dass man GUI Logik und Geschäftslogik sehr gut trennen kann. So kann man etwa die GUI Logik unabhängig von der Programmiersprache der Geschäftslogik schreiben. Die GUI Logik kann man in Javascript schreiben und die Geschäftslogik in Python.

Daraus liest Du:
Alfons Mittelmeyer hat geschrieben:Wenn es über QML diverse Schnittstellen zu Python gibt, dann ist der Qt Creator doch gut für Python Projekte einsetzbar, oder nicht?
Ehm eher Letzteres - also "oder nicht".
Nö, daraus lese ich das nicht.
__deets__
User
Beiträge: 4019
Registriert: Mittwoch 14. Oktober 2015, 14:29

Freitag 25. August 2017, 23:18

Alfons Mittelmeyer hat geschrieben:
jerch hat geschrieben:Für Python ist QtCreator eher ungeeignet, da es keine goodies für typische Pythonentwicklungsaufgaben mitbringt. Der Pythonsupport geht nicht über Editor-Highlightning hinaus.
Ich hatte aber gesehen, dass es keineswegs so ist, dass man in Python eine QML Anwendung startet und das war es. Sondern dass es doch Interfaces zu Python gibt.

Hiedr etwa wird in 'Ausgabe über Python und PyQt5' auf QML Widgets in Python zugegriffen. Müßte dann wohl auch Callback Anbinding möglich sein: http://vibora.de/2016/12/kleine-einfueh ... d-qml.html

In QML kann man auch Javascript Code mit reinschreiben, Python Code natürlich nicht. Woanders kann man das aber genauso wenig.

Und dennoch scheint es gar ein Interface von Javascript zu Python geben, sodass man sogar in das QML File eine Python Anbindung reinschreiben kann. Hier werden dann sogar Python Funktionen oder Methoden von Javascript aus aufgerufen;
https://wiki.python.org/moin/PyQt/QML%2 ... 20function
Und was hat Python und QML Integration mit dem Creator zu tun? Nichts.

Creator ist eine IDE. Die hat Vorteile beim arbeiten mit Qt im allgemeinen, und ggf. auch mit QML. Mit Python hat sie aber gerade mal gar nix zu tun, und QML als auch C++ und Python kann man genauso gut mit Emacs bearbeiten.
Alfons Mittelmeyer
User
Beiträge: 1715
Registriert: Freitag 31. Juli 2015, 13:34

Freitag 25. August 2017, 23:53

__deets__ hat geschrieben:Creator ist eine IDE. Die hat Vorteile beim arbeiten mit Qt im allgemeinen, und ggf. auch mit QML. Mit Python hat sie aber gerade mal gar nix zu tun, und QML als auch C++ und Python kann man genauso gut mit Emacs bearbeiten.
Und was soll jetzt das für eine Logik sein? Dann hat der Qt Designer ja auch nichts mit Python zu tun. Denn der erzeugt XML Dateien. Und die kann man ja auch mit jedem Editor schreiben. Wolltest Du das sagen?
__deets__
User
Beiträge: 4019
Registriert: Mittwoch 14. Oktober 2015, 14:29

Samstag 26. August 2017, 00:09

Alfons Mittelmeyer hat geschrieben:
__deets__ hat geschrieben:Creator ist eine IDE. Die hat Vorteile beim arbeiten mit Qt im allgemeinen, und ggf. auch mit QML. Mit Python hat sie aber gerade mal gar nix zu tun, und QML als auch C++ und Python kann man genauso gut mit Emacs bearbeiten.
Und was soll jetzt das für eine Logik sein? Dann hat der Qt Designer ja auch nichts mit Python zu tun. Denn der erzeugt XML Dateien. Und die kann man ja auch mit jedem Editor schreiben. Wolltest Du das sagen?
Der Qt Designer hat auch nichts mit Python zu tun. Er hat was mit Qt zu tun. Und klar kann man das XML von Hand schreiben. Ist ne doofe Idee, weil der Designer einem gute Abstraktion bietet. Man kann übrigens auch tkinter nutzen ohne deinen GuiDesigne.

Das ist aber nicht der Punkt.

Du behauptest der Creator böte "Goodies für Python nach JavaScript Schnittstellen". Tut er halt nicht. Das hat auch jerch gesagt.

Meine Güte, benutz ihn wenn du willst. Ist mir völlig egal. Aber wenn du mit den Antworten auf deine Fragen nicht klarkommst, stell sie halt nicht. Im Gegensatz zu dir habe ich mit Qt, QML, PyQt und allen Formen der Integration dieser Technologien gearbeitet, und liefere Produkte aus die darauf basieren. Und aus dieser Erfahrung heraus sage ich auf deine Frage, das er keine Vorteile bietet im Zusammenhang mit Python.
Antworten