Este artigo vai ensinar o básico da programação de interface gráfica Qt para C++, nada menos que a melhor plataforma de desenvolvimento GUI do mundo Linux.
As duas primeiras linhas de código fazem a inclusão dos arquivos de
título necessários ao uso das bibliotecas Qt. Normalmente, para cada
arquivo de título, o respectivo nome corresponde ao nome da classe
contida nele, ou seja, no arquivo qlabel está a classe QLabel e
apenas ela. Os nomes dos arquivos são sempre em letras minúsculas.
Na linha 06 um objeto da classe QApplication é criado. Obrigatoriamente
todo programa que faz uso de Qt tem que inicializar este objeto e pode
ter apenas um objeto da classe QApplication. Esta classe é responsável
por controlar e gerenciar o fluxo da aplicação. Os parâmetros de linhas
de comando são passados ao construtor do objeto QApplication, que se
encarregará de processar os argumentos de linha de comando.
Na linha 08, criamos um objeto da classe QLabel. Essa classe fornece um
simples rótulo de elemento GUI que pode ser usado como rótulo de outros
elementos GUI. Os rótulos podem conter texto ou imagens. Passamos o texto
que será exibido para o construtor da classe QLabel, mas poderíamos ter
repassado com o método QLabel::setText(String string).
Na linha 09 dizemos ao objeto QApplication que o objeto label é o seu
widget principal. O widget principal é o objeto que faz a aplicação sair
quando ela é fechada. Se não ficar definido um widget principal, quando
a janela da aplicação fosse encerrada mesmo com o botão de encerramento
usual, o programa continuaria a ocupar a memória. Isto gasta recursos,
então é melhor não esquecer.
Na linha 10, o método show() faz os objetos tornarem-se visíveis. Todo
objeto pode ser exposto ou oculto e objetos que não são secundários de
algum outro objeto exposto são ocultos por patrão. Se não explicitarmos
o estado de visibilidade do objeto label, o programa irá rodar, mas não
veremos nada.
Na linha 11 processaremos o evento principal. Faz-se isso fazendo chamada
ao método QApplication::exec() do objeto QApplication, que é responsável
por controlar o loop principal de todos os aplicativos criados em Qt.
[1] Comentário enviado por luiscarlos em 04/06/2005 - 17:47h
kra, adorei seu artigo, apesar de muito simples, me mostrou como começar com o Qt, tinha tentando a algum mexer nele mas sem sucesso, gostaria se possivel, que fizesse uma segunda arte deste artigo mostrando alguma coisa mais avançada, parabéns pelo artigo, muito bem explicado!!
[2] Comentário enviado por daaugusto em 04/06/2005 - 17:55h
> "nada menos que a melhor plataforma de desenvolvimento GUI do mundo Linux."
Isso só demonstra fanatismo. Eu prefiro a FLTK ao Qt (ou qualquer outro toolkit), por questões de elegância, licença e desempenho em tempo e espaço, e aí?!? Outros preferem o wxWidgets, FOX, Lazarus, Kylix, OpenStep e afins.
É difícil --senão impossível-- traçar um critério objetivo para dizer qual biblioteca/framework é melhor. E, ainda assim, projetos diferentes podem requerer toolkits diferentes, mais apropriados.
[3] Comentário enviado por mpinho em 04/06/2005 - 22:14h
Só uma correção: a Qt para windows já faz um tempo também é GPL para quem desenvolve programas GPL com ela. Só é necessário pagar se o programa for proprietário ou não GPL