@usingKarmicKoala
das passiert mir dauernd. Das liegt daran, da Du die falschen Libraries importiert hast bzw. die Qt4 Version sich irgendwo beißt.
--------------------------------------------------------
Dein Ausgangsproblem mit dem Tutorium in PyQt4 hatte ich auch. riverbankcomputing hilft nicht weiter.
Die sind gewissermassen der Taxifahrer. Der Fahrgast( und Bezahler) ist wohl Nokia.
Ich reg mich nicht mehr darüber auf, das die Beispiele zur PyQt.Library in Cpp sind.
Selbst gute Tutorien zu PyQt4 sind sehr selten zu finden. Das scheint Nokia alles nicht zu interessieren.
Ich bin in Qt4 und den Programmgenerator Pyuic4 hineingestossen worden.
Mit welchem Linux arbeitest Du? oder mit Windows?
Ich hab Ubuntu drauf und die jeweils neueste Version von Python ist immer auf dem Spiegelserver.
Mit Synaptic oder apt-get gibts immer die neueste Version, die wird soford eingebunden und fertig.
Der deutsche Spiegelserver steht an der FU Berlin, aber das ist unerheblich. Da kommt der code schon "vorverdaut"runter.
Manchmal kommen die Programme auch aus England aus Kent.
Den Tarball auszupacken ist sogar gefährlich, weil es dort zig Comileroptionen gibt.
Ubuntu gibts auch im Netz. ich bin damit sehr zufrieden.
Ich rate Dir: Datensicherheit und backups sind erste Bürgerpflicht täglich.
Guude
Fritz
Tutorial zu Qt und Sockets
Hi,
Du scheinst die Art von Import zu nutzen:
Herr Lunar macht aber:
Kann das sein das Du das gemischt hast ?
Ansonsten gib mal mehr Quelltext mit den Imports etc.
Du scheinst die Art von Import zu nutzen:
Code: Alles auswählen
import PyQt4
# und vor jede Instanziierung:
einString = QtCore.QString()
#oder
mainWindow = QtGui.Mainwindow()
#sowas schreiben !?
Code: Alles auswählen
from PyQt4.QtCore import pyqtSignal, QObject, QTextStream, QTextCodec
from PyQt4.QtGui import (QApplication, QMainWindow, QWidget, QVBoxLayout,
QLineEdit, QPlainTextEdit, QAction, QStyle)
from PyQt4.QtNetwork import QTcpSocket, QTcpServer, QHostAddress
#die instanziierung wäre dann:
mainWindow = QMainwindow()
.
.
.
Ansonsten gib mal mehr Quelltext mit den Imports etc.
@ichisich,
gut möglich.
Ich ahb mir das Programm von Lunar runtergezogen es läuft.
Ein generelle Problem sind die Programmfragmente. Das ist aber kein Qt Poblem. Das gibts auch in C oder Pascal. WEnn man die Randbedingungen nicht mit angibt, gibts probleme.
Bei Programmfragmenten muß man vorsichtig sein.
Guude
Fritz
gut möglich.
Ich ahb mir das Programm von Lunar runtergezogen es läuft.
Ein generelle Problem sind die Programmfragmente. Das ist aber kein Qt Poblem. Das gibts auch in C oder Pascal. WEnn man die Randbedingungen nicht mit angibt, gibts probleme.
Bei Programmfragmenten muß man vorsichtig sein.
Guude
Fritz
-
- User
- Beiträge: 27
- Registriert: Samstag 28. November 2009, 15:58
also erstens:
ich benutze ubuntu lucid (deswegen ist mein username vll etwas veraltet) und habe ganz frisch python3 installiert
zweitens:
ich wollte nur den quelltext von lunar ausführen, hab da am import nichts geändert!
ich benutze ubuntu lucid (deswegen ist mein username vll etwas veraltet) und habe ganz frisch python3 installiert
zweitens:
ich wollte nur den quelltext von lunar ausführen, hab da am import nichts geändert!
-
- User
- Beiträge: 27
- Registriert: Samstag 28. November 2009, 15:58
aber allgemein was das thema des threads angeht:
am besten lernt man programmieren immernoch durch das angucken von gut kommentierten quelltexten!!!
am besten lernt man programmieren immernoch durch das angucken von gut kommentierten quelltexten!!!
@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
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
-
- User
- Beiträge: 27
- Registriert: Samstag 28. November 2009, 15:58
achso^^ jetzt habs ichs verstanden...
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
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
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 ...
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 ...
- cofi
- Python-Forum Veteran
- Beiträge: 4432
- Registriert: Sonntag 30. März 2008, 04:16
- Wohnort: RGFybXN0YWR0
[code=python][/code]
oder
[python][/python]
Oder die Pastebin nutzen: http://www.python-forum.de/pastebin.php
oder
[python][/python]
Oder die Pastebin nutzen: http://www.python-forum.de/pastebin.php
Michael Markert ❖ PEP 8 Übersetzung ❖ Tutorial Übersetzung (3.x) ⇒ Online-Version (Python 3.3) ❖ Deutscher Python-Insider ❖ Projekte
@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
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