Começando a programar com o Qt

Bem vindo ao mundo do Qt — o toolkit para GUIs multi-plataforma. Neste guia para iniciantes será ensinado um conhecimento básico de Qt através da implementação de uma aplicação simples de bloco de notas. Após ler este guia, você estará pronto para investigar os overviews e documentação da API e encontrar a informação que você precisa para a aplicação que está desenvolvendo.

Alô bloco de notas

Neste primeiro exemplo, apenas é criada e apresentada uma caixa de edição de texto em uma janela no desktop. Isto representa o programa Qt mais simples possível que tenha uma interface gráfica.

gs1.png

Aqui está o código:

  1.  #include <QApplication>
  2. #include <QTextEdit>
  3.  
  4. int main(int argv, char **args)
  5. {
  6.    QApplication app(argv, args);
  7.  
  8.    QTextEdit textEdit;
  9.    textEdit.show();
  10.  
  11.    return app.exec();
  12. }

Vamos percorrer o código linha por linha. Nas duas primeiras linhas são incluídos os arquivos de header para QApplication e QTextEdit, as duas classes que precisamos para este exemplo. Todas as classes do Qt tem um arquivo de header com mesmo nome.

Na linha 6 é criado um objeto QApplication. Este objeto gerencia os recursos gerais da aplicação e é necessário para executar qualquer programa Qt que tenha uma interface gráfica. Ele precisa de argv e args porque o Qt aceita alguns argumento de linha de comando.

Linha 8 cria um objeto QTextEdit. A edição de texto é um elemento visual na interface. No Qt, que chamamos de widgets tais elementos. Exemplos de outros widgets são os botões de rolagem barras, etiquetas e rádio. Um widget pode ser um contêiner para outros elementos, um diálogo ou uma janela principal do aplicativo, por exemplo.

Na line 8 é criado um objeto QTextEdit. O editor de texto (text edit) é um elemento visual na interface. No Qt, este tipo de elementos é chamado de widget. Exemplos de outros widgets são os botões de rolagem barras (scroll bars), etiquetas (labels) e “radio buttons”. Um widget pode também ser um contêiner para outros elementos, um diálogo ou a janela principal do aplicativo, por exemplo.