[GUI avec Python] PyQt5 -Widget II-

Dernière fois suite

widgets Ⅱ Je vais résumer grossièrement ce site en japonais.

[Optimisation de l'affichage de l'image]

QPixmap.py


#!/usr/bin/python3
# -*- coding: utf-8 -*-


import sys
from PyQt5.QtWidgets import (QWidget, QHBoxLayout, 
    QLabel, QApplication)
from PyQt5.QtGui import QPixmap


class Example(QWidget):
    
    def __init__(self):
        super().__init__()
        
        self.initUI()
        
        
    def initUI(self):      

        hbox = QHBoxLayout(self)
        #Créer un objet QPixmap
        pixmap = QPixmap("imoyokan.jpg ")

        #Faire une étiquette et y mettre une image
        lbl = QLabel(self)
        lbl.setPixmap(pixmap)

        hbox.addWidget(lbl)
        self.setLayout(hbox)
        
        self.move(300, 200)
        self.setWindowTitle('Imoyokan')
        self.show()        
        
        
if __name__ == '__main__':
    
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())
pixmap.png

[Afficher le texte saisi sur l'étiquette]

QLineEdit.py


#!/usr/bin/python3
# -*- coding: utf-8 -*-


import sys
from PyQt5.QtWidgets import (QWidget, QLabel, 
    QLineEdit, QApplication)


class Example(QWidget):
    
    def __init__(self):
        super().__init__()
        
        self.initUI()
        
        
    def initUI(self):      

        #Créer un objet d'étiquette
        self.lbl = QLabel(self)
        #Création d'objets QLineEdit
        qle = QLineEdit(self)
        
        qle.move(60, 100)
        self.lbl.move(60, 40)

        #Appelez la fonction onChanged lorsqu'un caractère est entré dans qle
        qle.textChanged[str].connect(self.onChanged)
        
        self.setGeometry(300, 300, 280, 170)
        self.setWindowTitle('QLineEdit')
        self.show()
        
        
    def onChanged(self, text):
        
        #Insérez le texte saisi dans l'étiquette
        self.lbl.setText(text)
        #Ajuster la longueur de l'étiquette en fonction du texte saisi
        self.lbl.adjustSize()        
        
        
if __name__ == '__main__':
    
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())
lineedit.png

[Changer la taille du widget en faisant glisser]

QSplitter


#!/usr/bin/python3
# -*- coding: utf-8 -*-


import sys
from PyQt5.QtWidgets import (QWidget, QHBoxLayout, QFrame, 
    QSplitter, QStyleFactory, QApplication)
from PyQt5.QtCore import Qt


class Example(QWidget):
    
    def __init__(self):
        super().__init__()
        
        self.initUI()
        
        
    def initUI(self):      

        hbox = QHBoxLayout(self)

        #Créer un objet frame
        topleft = QFrame(self)
        #Réglage de la forme du cadre
        topleft.setFrameShape(QFrame.StyledPanel)
 
        topright = QFrame(self)
        topright.setFrameShape(QFrame.StyledPanel)

        bottom = QFrame(self)
        bottom.setFrameShape(QFrame.StyledPanel)

        #Créez un objet QSplitter horizontal et ajoutez un cadre
        splitter1 = QSplitter(Qt.Horizontal)
        splitter1.addWidget(topleft)
        splitter1.addWidget(topright)

        # #Créez un objet QSplitter vertical et ajoutez un cadre
        splitter2 = QSplitter(Qt.Vertical)
        splitter2.addWidget(splitter1)
        splitter2.addWidget(bottom)

        hbox.addWidget(splitter2)
        self.setLayout(hbox)
        
        self.setGeometry(300, 300, 300, 200)
        self.setWindowTitle('QSplitter')
        self.show()
        
        
    def onChanged(self, text):
        
        self.lbl.setText(text)
        self.lbl.adjustSize()        
        
        
if __name__ == '__main__':
    
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())
aplitter.png

【boîte combo】

QComboBox.py


#!/usr/bin/python3
# -*- coding: utf-8 -*-


import sys
from PyQt5.QtWidgets import (QWidget, QLabel, 
    QComboBox, QApplication)


class Example(QWidget):
    
    def __init__(self):
        super().__init__()
        
        self.initUI()
        
        
    def initUI(self):      

        #Création d'étiquettes, nom initial d'Ubuntu
        self.lbl = QLabel("Ubuntu", self)

        #Création d'un objet QComboBox
        combo = QComboBox(self)
        #Dénomination des éléments
        combo.addItem("Ubuntu")
        combo.addItem("Mandriva")
        combo.addItem("Fedora")
        combo.addItem("Arch")
        combo.addItem("Gentoo")

        combo.move(50, 50)
        self.lbl.move(50, 150)

        #Appelez la fonction onActivated lorsqu'un élément est sélectionné
        combo.activated[str].connect(self.onActivated)        
         
        self.setGeometry(300, 300, 300, 200)
        self.setWindowTitle('QComboBox')
        self.show()
        
        
    def onActivated(self, text):
        
        #Définir le nom de l'élément sélectionné pour l'étiquette
        self.lbl.setText(text)
        #Ajuster la longueur de l'étiquette
        self.lbl.adjustSize()  
        
                
if __name__ == '__main__':
    
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())
combobox.png

La prochaine fois essaiera à peu près Glisser-déposer.

Recommended Posts

[GUI avec Python] PyQt5 -Widget II-
[GUI avec Python] PyQt5-Widget personnalisé-
[GUI en Python] PyQt5 -Widget-
[GUI avec Python] PyQt5-Préparation-
[GUI avec Python] PyQt5 -Paint-
J'ai créé une application graphique avec Python + PyQt5
Compilation Python avec pyqt deploy
[GUI en Python] PyQt5-Layout management-
Présentation de l'interface graphique: PyQt5 en Python
[GUI en Python] PyQt5 -Event-
Faisons une interface graphique avec python.
[GUI avec Python] PyQt5-La première étape-
[GUI en Python] PyQt5-Glisser-déposer-
J'ai joué avec PyQt5 et Python3
Construction d'interface graphique heureuse avec électron et python
Statistiques avec python
Grattage avec Python
Python avec Go
Twilio avec Python
Intégrer avec Python
Jouez avec 2016-Python
AES256 avec python
Testé avec Python
python commence par ()
avec syntaxe (Python)
Bingo avec python
Zundokokiyoshi avec python
Excel avec Python
Micro-ordinateur avec Python
Cast avec python
Outil de rognage d'image GUI réalisé avec Python + Tkinter
Automatisation de l'interface graphique avec le pilote d'application Python x Windows
Vous pouvez facilement créer une interface graphique même avec Python
Créer un widget avec une couleur spécifiée avec Python + Qt (PySide)
Création d'un outil de vente simple avec Python GUI: création de devis
Ouvrir la boîte de dialogue de fichier avec l'interface graphique Python (tkinter.filedialog)
Zip, décompressez avec python
Django 1.11 a démarré avec Python3.6
Jugement des nombres premiers avec Python
Python avec eclipse + PyDev.
Grattage en Python (préparation)
Essayez de gratter avec Python.
Apprendre Python avec ChemTHEATER 03
Recherche séquentielle avec Python
"Orienté objet" appris avec python
Exécutez Python avec VBA
Manipuler yaml avec python
Communication série avec python
Apprendre Python avec ChemTHEATER 05-1
Apprenez Python avec ChemTHEATER
Exécutez prepDE.py avec python3
1.1 Premiers pas avec Python
Collecter des tweets avec Python
Binarisation avec OpenCV / Python
3. 3. Programmation IA avec Python
Méthode Kernel avec Python
Non bloquant avec Python + uWSGI
Grattage avec Python + PhantomJS
Publier des tweets avec python
Conduisez WebDriver avec python
Utiliser mecab avec Python 3