PyQt4 strangeness

T

Tina I

I'm trying to 'convert' my self from Qt3 to Qt4 (it rocks!) and one
thing seem strange:
With Qt3 I usually did "from qt import *", but this does not seem to
work with Qt4. I have to use "from PyQt4 import QtGui , QtCore" and also
have to use "QtCore.something".

Like when connecting a button:

self.connect(self.ui.testButton, QtCore.SIGNAL("clicked()"),
self.doSomething)

Anyone know why this is? Or am I missing something very basic here? (I'm
still very much a noob I guess)

I'm using the Debian packages by the way.

Thanks
Tina
 
J

Jeremy Sanders

Tina said:
self.connect(self.ui.testButton, QtCore.SIGNAL("clicked()"),
self.doSomething)

Anyone know why this is? Or am I missing something very basic here? (I'm
still very much a noob I guess)

If you want to import both you can do something like:

import PyQt4.Qt as Qt

which imports QtCore and QtGui

Jeremy
 
P

Phil Thompson

I'm trying to 'convert' my self from Qt3 to Qt4 (it rocks!) and one
thing seem strange:
With Qt3 I usually did "from qt import *", but this does not seem to
work with Qt4. I have to use "from PyQt4 import QtGui , QtCore" and also
have to use "QtCore.something".

Like when connecting a button:

self.connect(self.ui.testButton, QtCore.SIGNAL("clicked()"),
self.doSomething)

Anyone know why this is? Or am I missing something very basic here? (I'm
still very much a noob I guess)

I'm using the Debian packages by the way.

The module structure of PyQt reflects the library structure of Qt. Qt4 has
different libraries to Qt3 so PyQt4 has different modules to PyQt3.

The top level PyQt4 module ensures that PyQt3, PyQt4 (and eventually PyQt5)
can all be installed side by side in the same site-packages directory.

The style of import statement you use is up to you. All of the PyQt4 examples
adopt the style you describe, but you can achieve the equivalent of your
current practice by doing the following instead...

from PyQt4.Qt import *

Phil
 
T

Tina I

Phil said:
The module structure of PyQt reflects the library structure of Qt. Qt4 has
different libraries to Qt3 so PyQt4 has different modules to PyQt3.

The top level PyQt4 module ensures that PyQt3, PyQt4 (and eventually PyQt5)
can all be installed side by side in the same site-packages directory.

The style of import statement you use is up to you. All of the PyQt4 examples
adopt the style you describe, but you can achieve the equivalent of your
current practice by doing the following instead...

from PyQt4.Qt import *

Phil
Ah, I see :)
Thanks for the explanation.

Tina
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Members online

Forum statistics

Threads
473,962
Messages
2,570,134
Members
46,690
Latest member
MacGyver

Latest Threads

Top