Dans ce cas spécifique de capture de la sortie détat de ffmpeg (qui va à STDERR), cette question SO la résolu pour moi :sous-processus FFMPEG et Pythons Lastuce consiste à ajouter universal_newlines=True au subprocess.Popen() call, car la sortie de ffmpeg nest en fait pas tamponnée mais est accompa
Autant que je sache, vous pouvez simplement référencer un élément en utilisant .itemText() : AllItems = [QComboBoxName.itemText(i) for i in range(QComboBoxName.count())]
Comme mentionné dans les commentaires, vous devez installer le python-qt4 package - pas besoin de le recompiler vous-même. sudo apt-get install python-qt4 Javais la même erreur - ImportError: No module named PyQt4.QtGui . Au lieu dexécuter votre fichier python (qui utilise PyQt) sur le terminal
Jai créé un petit exemple qui montre 3 façons différentes et simples de traiter les threads. Jespère que cela vous aidera à trouver la bonne approche à votre problème. import sys import time from PyQt5.QtCore import (QCoreApplication, QObject, QRunnable, QThread, QThreadPo
from PyQt4 import QtGui import sys imagePath = enter the path to your image here class ImgWidget1(QtGui.QLabel): def __init__(self, parent=None): super(ImgWidget1, self).__init__(parent) pic = QtGui.QPixmap(imagePath) self.setPixmap(pic) class ImgWidget2(QtGui.QWidget
Cest parce que ce fichier a un configure.py pas un setup.py . configure.py génère un fichier make que vous utilisez pour construire pyqt par rapport à la bibliothèque qt que vous choisissez en passant loption --qmake à configure.py, il a également différentes options. Je suggère de signaler un bogue
Cest une réponse très tardive, mais jai pensé quelle pourrait être utile pour référence future. Je cherchais aussi la réponse à cette question. Mais je voulais identifier les types de widgets afin de pouvoir les gérer en conséquence. Voici un exemple de code de ce que jai trouvé : for widget in cent
Si vous avez installé Qt4, alors vous avez Qt Designer. Si vous avez utilisé le programme dinstallation de qt.nokia.com, il devrait se trouver dans /Developer/Applications/Qt. Qt Designer lui-même fonctionne très bien avec PyQt. Le concepteur Qt crache simplement du XML décrivant la structure de li
17.4. signal — Définit les gestionnaires pour les événements asynchrones Bien que les gestionnaires de signaux Python soient appelés de manière asynchrone en ce qui concerne lutilisateur Python, ils ne peuvent se produire quentre les instructions «atomiques» de linterpréteur Python. Cela signifie q
À droite, les packages PyQT nutilisent pas distutils / setup.py pour son installation, ils ne peuvent donc pas être installés avec easy_install ou pip. Vous devez le télécharger et linstaller manuellement. Cela signifie également que vous ne devriez pas mettez-le dans votre requires metadata, comm
Cest juste comment la portée, la recherche de nom et les fermetures sont définies en Python. Python introduit uniquement de nouvelles liaisons dans lespace de noms via laffectation et via les listes de paramètres des fonctions. i nest donc pas réellement défini dans lespace de nom du lambda , mais
Après de nombreuses recherches (et celle-ci a pris du temps, je lajoute donc ici pour référence future), cest ainsi que jai trouvé pour vraiment effacer et supprimer les widgets dans un layout : for i in reversed(range(layout.count())): layout.itemAt(i).widget().setParent(None) Ce que dit la
Cela semble fonctionner si : self.connect(lb, SIGNAL(doubleClicked()), self.someMethod) Est remplacé par la nouvelle syntaxe de : lb.doubleClicked.connect(self.someMethod) Ce dernier est beaucoup plus élégant aussi. Cependant, je ne sais toujours pas pourquoi la syntaxe dorigine ne fonctionnait
Il ny a pas de boîte de dialogue de fichier disponible dans le concepteur Qt pour autant que je sache. Mais vous pouvez facilement le faire avec quelques lignes de code. En supposant que vous ayez un simple bouton appelé pushButton et que le chemin soit stocké dans lineEdit. def selectFile(): l
Pour obtenir un widget depuis un QLayout, il faut appeler son itemAt(index) method.Comme le nom de cette méthode lindique, elle renverra un élément au lieu dun widget. Appel au widget() sur le résultat vous donnera enfin le widget : myWidget = self.myLayout.itemAt(index).widget() Pour supprimer un
Utilisez quelque chose comme CherryPy ou paste.httpserver. Vous pouvez utiliser le serveur de wsgiref, et cela fonctionne généralement bien localement, mais si vous utilisez Ajax, la nature monothread de wsgiref peut entraîner des résultats étranges, ou si vous faites une sous-requête, vous obtiendr
Jai eu exactement le même problème que vous. Essayez de déplacer self.parse_triggered = QtCore.pyqtSignal() hors de votre constructeur mais à lintérieur de votre déclaration de classe. Ainsi, au lieu de ressembler à ceci : class Worker(QtCore.QThread): def __init__(self, parent = None):
Létiquette est bien mise à jour, mais linterface graphique nest pas redessinée avant la fin de votre boucle. Voici ce que vous pouvez faire : Déplacez votre boucle de longue durée vers un thread secondaire, le dessin de linterface graphique se produit dans le thread principal. Appelez le app
Jai commencé à écrire ma première application PyQT (PyQT nest utilisé que pour gérer linterface graphique), et il semble que la bonne chaîne doutils soit :QtDesigner pour générer des .ui et gérer des ressources et certains IDE, qui peuvent configurer QtDesigner pour les modifier. Jutilise Eclipse, c
Une autre façon dutiliser .ui dans votre code est : from PyQt4 import QtCore, QtGui, uic class MyWidget(QtGui.QWidget) ... #somewhere in constructor: uic.loadUi(MyWidget.ui, self) les deux approches sont bonnes. Noubliez pas que si vous utilisez des fichiers de ressources Qt (extrêmeme