Il codice Python
qui proposto sfrutta le librerie grafiche QtPy5
, per generare un QrCode.

Vediamo, dapprima, la struttura del programma in Qt Designer
:

Sia al bottone (pB_genera
) che alla QLineEdit (lE_testo
) è stato associato il metodo pB_valutaClick
() della classe Ui(QWidget)
. La classe Ui(QWidget)
è così costruita:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | class Ui(QWidget): def __init__( self ): super ().__init__() uic.loadUi( 'qrcode.ui' , self ) self .setFixedSize( 500 , 390 ) def pB_valutaClick( self ): try : # String which represents the QR code s = ( self .lE_testo.text()) # output file name filename = "qrcode.png" filename_svg = "qrcode.svg" # Generate QR Code img = pyqrcode.create(s) img.png(filename, scale = 7 ) if self .cB_svg.isChecked(): img.svg(filename_svg, scale = 8 ) pixmap = QPixmap(filename) self .lab_output.setPixmap(pixmap) except : print ( 'Valore nel campo non accettato' ) |
Il codice provvede a costruire l’oggetto window
, istanza della classe Ui()
, attraverso l’istruzione:
1 2 3 4 | app = QApplication(sys.argv) window = Ui() window.show() sys.exit(app. exec ()) |
Si è scelto di dare la possibilità di salvare il qrcode generato anche in formato .svg allorquando il QcheckBox
, nominato cB_svg
, risulta essere flaggato:
1 2 | if self .cB_svg.isChecked(): img.svg(filename_svg, scale = 8 ) |
Qui è possibile recuperare il codice del progetto completo.