Seite 2 von 2

Re: Tutorial zu Qt und Sockets

Verfasst: Samstag 12. Juni 2010, 12:12
von 3ff
@usingKarmicKoala
alles richtig, aber Pyqt4 ist ein Riesenblock an code, der sehr viel Speicher frist. Also teilt man es auf in die einzelnen Unterpakete.
Fehlermeldungen wie oben erwähnt entstehen, wenn dein System die betreffende Bibliothek nicht hat.
Python3.0 ist schon die aktuelle Version. Aber Qt ist strenggenommen eine "andere" Baustelle.
Die Spiegelserver von Ubuntu sind auch bemüht, immer die aktuellen Pakete vorzuhalten aber das klappt nicht immer.
Ich komm grad vom Einkaufen zurück und wollte mal ein Beispiel bringen wo ein bestimmter connect-Aufruf geht und wo nicht.
Ich komm da noch drauf zurück.
Guude
Fritz :D

Re: Tutorial zu Qt und Sockets

Verfasst: Samstag 12. Juni 2010, 15:24
von usingKarmicKoala
achso^^ jetzt habs ichs verstanden...

Re: Tutorial zu Qt und Sockets

Verfasst: Samstag 12. Juni 2010, 18:57
von 3ff
Sorry aber ich kann die datei nicht/noch nicht hochladen. Nochmal zu Deinem Problem zurück.
Besorg dir immer die aktuellste version von qt4. Da gibts auch unterschiedliche Pakete von Ubuntu.
Mit synaptic ist sichergestellt, das du immer die aktuellen (nicht unbedingt die aktuellsten) Versionen hast.
Ich will ein Icon laden und darstellen mit PyQt4, weil ich nicht mit Cpp arbeite.
-------------------------------
import sys
from PyQt4.Qt import *
ffflogoxpm = ["...bla","bla"]
class label (QMainWindow):
def __init__(self, *args):
QLabel._init__(self, *args)
self.lab1= QLabel("Fritz", self)
self.lab1= setMaximumWidth(100)
self.lab2= QLabel"--", self)
self.lab2= QIcon(QPixmap(ffflogoxpm))
def main (args):
das übliche...

Dies Programm bringt einen segmentation fault, der bösartig ist.
Was kann das sein?
Hängt das vieleicht mit der Bib PyQt4.Qt import *
denn da wird der ganz große Programmblock geladen.
Speicher ist hier genug da, ich hab 1 Siemens-Fujitsu mit 2 GByte hauptspeicher. Es kann auch 1 Compilerfehler sein, an Python liegt es bestimmt nicht.
Guude
Fritz :shock: :shock:

Re: Tutorial zu Qt und Sockets

Verfasst: Samstag 12. Juni 2010, 19:23
von lunar
Formatierte Deinen Quelltext doch bitte anständig, so ist er unlesbar. Das Problem selbst ist, dass Basisklasse und Konstruktoraufruf nicht zusammen passen. Du rufst einfach irgendeinen Konstruktor auf, leitest aber von einer ganz anderen Klasse ab. Das kann ja nicht gut gehen, wie zum Teufel bist Du denn darauf gekommen, dass Du "QLabel.__init__()" aufrufen musst, wenn Du von "QMainWindow" ableitest? Davon abgesehen wird auch die Anzeige nicht korrekt sein, da Du keine Layoutverwaltung nutzt, und somit alle Steuerelemente an der obersten linken Ecke platziert werden. Zudem ist es nicht empfehlenswert, Steuerelemente direkt auf QMainWindow zu platzieren. Das wirft das Layout des Hauptfensters durcheinander. Zum Hinzufügen von Steuerelementen musst Du das ".centralWidget()" nutzen.

Im Übrigen gibt es keine Steigerung von "aktuell" in dem Zusammenhang, in dem Du dieses Wort verwendest. Entweder ist eine Bibliothek „aktuell“ oder sie ist nicht. Eine „aktuellste“ Bibliothek aber gibt es nicht ...

Re: Tutorial zu Qt und Sockets

Verfasst: Samstag 12. Juni 2010, 21:13
von 3ff
@Lunar
ih werd das mal ändern und dann das irgendwie formatiert neu editieren.
Hochladen geht nicht?
Fritz

Re: Tutorial zu Qt und Sockets

Verfasst: Samstag 12. Juni 2010, 21:16
von cofi
[code=python][/code]
oder
[python][/python]

Oder die Pastebin nutzen: http://www.python-forum.de/pastebin.php

Re: Tutorial zu Qt und Sockets

Verfasst: Sonntag 13. Juni 2010, 08:40
von 3ff
@coli
Danke,
das Problem ist gelöst. Der Tip von Lunar war richtig.Man muß setPixmap von einer Funktion aus aufrufen.
Da macht der Qt-Compiler aber merkwürdige Sachen. ich will das Ergebnis mal zeigen, zumal gestern hab ich eine Stelle im Web gefunden, die behauptet, QPixmap wäre 1 bug von riverside.
Guude
Fritz 8)

Re: Tutorial zu Qt und Sockets

Verfasst: Sonntag 13. Juni 2010, 09:08
von 3ff
@cofi
krieg das mit der pastebin nicht hin.

Re: Tutorial zu Qt und Sockets

Verfasst: Sonntag 13. Juni 2010, 11:44
von jerch
@3ff:
Die Pixmap-Sache ist hier reichlich offtopic und besser in einem neuen Thread aufgehoben.

Ansonsten:
Was meinst Du mit "... von einer Funktion aus aufrufen"?
Was ist der "Qt-Compiler"?