[PyQt] Problems with QX11EmebedContainer since Qt4.4/PyQt latest

Phil Thompson phil at riverbankcomputing.com
Sat Jun 21 14:48:22 BST 2008


On Sat, 21 Jun 2008 10:42:20 -0300, "Gustavo A. Díaz"
<gustavo.diaz at gmail.com> wrote:
> Hi guys.
> 
> Since Qt4.4 (i dont know if is cause of Qt or PyQt latest version) i have
> proeblems with this.
> I have a code in my app that embeds a xterm console inside a frame, that
> was
> working perfect always... but since Qt4.4 doesn't anymore.
> 
> My code:
> 
> class toolsConsole(QtCore.QObject):
>     def __init__(self, gui):
>         QtCore.QObject.__init__(self)
> 
>         self.gui = gui
> 
>         # Creamos un contenedor para poder embeber la consola dentro de
un
> frame
>         self.container = QX11EmbedContainer(self.gui.consoleFrame)
>         self.container.setGeometry(4, 4, 600, 425)
> 
>         # Comenzamos a definir la ventana para poder obtener el wid
> (window
> ID) y colocarlo en el "container"
>         wid = self.container.winId()
> 
>         # Asigamos los parámetros de la aplicación y a su vez,
obtenemos
> el
> número de WID.
>         self.parametersList = ["-into", repr(wid), "-bg", "black", "-fg",
> "white"]
> 
>         # Definimos la clase para ejecutar el proceso, o sea, la
> aplicación
> de la consola xterm
>         self.process = QtCore.QProcess()
> 
>         # Especificamos que el path por defecto, sea el HOME de cada
> usuario.
>         self.initDirectory = QString(QDir.homePath())
>         self.process.setWorkingDirectory(self.initDirectory)
> 
>         # Ejecutamos el proceso de xterm
>         self.process.start("xterm", self.parametersList)
> 
> 
> Indeed the process executes, the xterm is executing and with the winId
> number and the parameters i've passed.
> 
> Any tip?

Try it with the version of Qt that worked before but with the current PyQt
snapshot. If it works then it's a Qt problem. If it doesn't then it's
probably a PyQt problem.

Phil



More information about the PyQt mailing list