Infra - Linux

Como criar uma aplicação Boo com o QT#

O objetivo deste tutorial é orientar no processo de instalação do linguagem Boo para em seguida criar as aplicações em QT# para rodar sobre o Mono runtime.

por Rogério Pereira Araújo



Propósito:

- O objetivo deste tutorial é orientar no processo de instalação do linguagem Boo para em seguida criar as aplicações em QT# para rodar sobre o Mono runtime.

- Nesta parte do tutorial estaremos abordando a instalação do Boo para trabalhar em conjunto com o Mono e um código de exemplo.

Instalando o Boo:

- Baixe o arquivo boo-0.3-bin.zip
http://dist.codehaus.org/boo/distributions/boo-0.3-bin.zip

- Descompacte para uma pasta de sua escolha.

- Adicione o caminho para a pasta bin que está dentro da pasta que você escolheu quando descompactou o arquivo na variável de ambiente MONO_PATH

Criando a aplicação:

- Utilizando o seu editor preferido copie e cole o seguinte código:

import System
import Qt from "Qt"

class BooQt(QVBox):
   botao as QPushButton   

   //Metodo de inicializacao dos componentes
   def init():
      //criando o botao
      botao = QPushButton(QString("Clique em mim!"), self) 
      //associando um metodo para responder ao evento do clique no botao
      self.Connect(botao, "clicked()", "button_Clicked()")      

   //Construtor
   def constructor():
      //chamando o metodo que vai adicionar os componentes a janela
      init()

   //Evento do clique no botao
   def button_Clicked():
      //ao clicar no botao escreva isso no console
      Console.WriteLine("botao clicado!")

//Inicializacao da aplicacao   
app = QApplication(System.Environment.GetCommandLineArgs())

booqt = BooQt();
app.SetMainWidget(booqt);
booqt.Show()

app.Exec()

Compilando/Executando a aplicação:

- Para compilar utilize o comando:

mono booc.exe -output:qt.exe qt.boo

- Para executar utilize o comando:

mono qt.exe

A aplicação em execução:

Rogério Pereira Araújo

Rogério Pereira Araújo - Consultor de Informática da Druid Internet Systems, desenvolvedor de soluções em busca corporativa, mobilidade e gestão de negócios, possui experiência em diversas tecnologias como Python, Bash, SQL, Perl, Java (JSF, J2ME, EJB), .NET (ASP.NET, Compact Framework), PHP, XML (SOAP e XQuery) e Delphi. Colaborador da revista webmobile e de vídeo-aulas para a JavaMagazine.
http://faces.eti.br