PyQt 06 – Mais diálogos

Este artigo é a parte 6 de 14 na série PyQt

O PyQt possui ainda outros diálogos pré-definidos, que ainda não foram apresentados. São eles: QFontDialog, QPageSetupDialog, QPrintDialog, QPrintPreviewDialog, QProgressDialog, QColorDialog e QDialogButtonBox.

Como pode ser visto, são muitos os diálogos e não pretendo detalha-los, pois seria muito tedioso. Mas para não deixá-los passar em vão, vou escrever algumas linhas para fazer uma apresentação, mesmo que superficial, de suas principais funções estáticas destas classes. Para mais informações, siga os links apresentados acima e leia sua documentação.

1. QFontDialog

O QFontDialog possui uma função estática que provem um diálogo para seleção de fontes. Sua sintaxe é apresentada abaixo:

QFontDialog.getFont (initial_font, parent, title, options)

onde:

  • initial_font – a fonte inicialmente selecionada. A fonte deve ser uma instância de QFont;
  • parent – a widget pai, como nos diálogos anteriores;
  • title – o título da jenela;
  • options – algumas opções para o diálogo.
>>> from PyQt4.QtGui import *                                         
>>> app = QApplication([])
>>>
>>> ft = QFontDialog.getFont(QFont("Chandas", 10), None, 'Escolha uma fonte')
>>> ft
(<pyqt4 .QtGui.QFont object at 0x7f5fa3907160>, True)

O retorno será uma tupla, com o elemento 0 com a QFont selecionada e o elemento 1 com True/False, dependendo do botão pressionado, Ok/Cancel.

2. QPageSetupDialog

A classe QPageSetupDialog fornece um diálogo para a configuração da página de impressão.

Sintaxe:

QPageSetupDialog(parent)

Apenas o diálogo pai é requerido. A linha abaixo apresenta o diálogo em operação.

>>> dl = QPageSetupDialog(None)
>>> dl.setWindowTitle('Seleção de Fonte')
>>> dl.exec_()
>>> dl.printer
<built-in method printer of QPageSetupDialog object at 0x7f5fa39070d8>

O método exec_() retorna 1 para Ok e 0 para Cancel. O retorno da configuração, não testei, é feito pelo atributo printer, na última linha do código acima.

3. QPrintDialog

A classe QPrintDialog provem um diálogo para especificar as configurações da impressora. Sua sintaxe pode ser uma das apresentadas a seguir:

QPrintDialog(QPrinter printer, QWidget parent = None)
QPrintDialog(QWidget parent = None)

printer é a impressora padrão passada como parâmetro. A linha abaixo mostra uma aplicação do diálogo.

 
>>> dl = QPrintDialog(None)
>>> dl.exec_()

Este diálogo invoca a classe anterior para configurar a página.

dialog-14

Em minha máquina não existia nenhuma impressora instalada e por isto, não aparece nada na lista de impressoras.

Notas do autor…

Este post esta parado a mais de dois meses e confesso que ainda não encontrei a coragem necessária para termina-lo.

O problema é que sempre que penso em escrever mais algo sobre o PyQt, me deparo com este texto inacabado e não consigo prosseguir.

Farei o seguinte: Por agora vou deixar este texto como estar e tentarei retornar a ele numa outra ocasião. Com isto pretendo prosseguir com outros conteúdos mais diretos.

Att.
Rudson R. Alves

Este post tem um comentário

  1. ronaldo

    Sempre que for possível pra vc, mostre-nos a maior quantidade de recursos e exemplos sobre o pyqt pois eu estou gostando muito. Parabéns pela iniciativa!

Deixe um comentário

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.