PyQt - Widget QFontDialog

Un'altra finestra di dialogo di uso comune, un widget per la selezione dei caratteri, è l'aspetto visivo di QDialogclasse. Il risultato di questa finestra di dialogo è un oggetto Qfont, che può essere utilizzato dalla finestra padre.

La classe contiene un metodo statico getFont (). Visualizza la finestra di dialogo per la selezione dei caratteri. Il metodo setCurrentFont () imposta il carattere predefinito della finestra di dialogo.

Esempio

L'esempio seguente ha un pulsante e un'etichetta. Quando si fa clic sul pulsante, viene visualizzata la finestra di dialogo del carattere. Il carattere scelto dall'utente (viso, stile e dimensione) viene applicato al testo sull'etichetta.

Il codice completo è -

import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *

class fontdialogdemo(QWidget):
   def __init__(self, parent = None):
      super(fontdialogdemo, self).__init__(parent)
		
      layout = QVBoxLayout()
      self.btn = QPushButton("choose font")
      self.btn.clicked.connect(self.getfont)
		
      layout.addWidget(self.btn)
      self.le = QLabel("Hello")
		
      layout.addWidget(self.le)
      self.setLayout(layout)
      self.setWindowTitle("Font Dialog demo")
		
   def getfont(self):
      font, ok = QFontDialog.getFont()
		
      if ok:
         self.le.setFont(font)
			
def main():
   app = QApplication(sys.argv)
   ex = fontdialogdemo()
   ex.show()
   sys.exit(app.exec_())
	
if __name__ == '__main__':
   main()

Il codice precedente produce il seguente output: