Archive for March 29th, 2008

A lo largo de diferentes posts, intentaré publicar una pequeña guía - tutorial para crear Interfaces Gráficas de forma sencilla y potente en Java gracias a QTJambi (librerías gráficas GPL) de la empresa Trolltech y el IDE Eclipse. QT Jambi dispone de un plugin para Eclipse que se integra muy bien en todo el entorno y de esta forma podemos  trabajar de forma más cómoda y rápida.

Lo primero que hay que hacer es descargarse todos los paquetes necesarios disponibles aquí:

  1. Descargarse Qt Jambi Open Source Edition for Java Developers (para la plataforma que queramos)
  2. Descargarse Qt Eclipse Integration for Jambi

Una vez hecho esto seguimos las instrucciones de instalación del plugin de Eclipse y como empezar a crear un proyecto nuevo. Es muy importante agregar el .jar externo del punto [1] a nuestros proyectos de Eclipse. Esto se hace haciendo click con el botón derecho del ratón y seleccionando properties. Nos debería quedar una cosa así.eclipseintegration

 

 

 

 

 

 

Ahora ya podemos crear un proyecto nuevo. Propongo una ventana simple, con dos cuadros de texto en los que escribiremos , en el primero una frase, en el segundo un número de iteraciones a repetir la frase, un botón simple y una salida de texto con la frase repetida tantas veces como le hayamos dicho al programa.

screenshotwindow

 

 

 

 

 

 

Con el QTDesigner UI creamos la interface y nos debería quedar una cosa parecida a este screenshot.

Nota: Podéis cambiar el nombre de los botones apretando con el botón derecho y de esta manera hacer más fácil y más legible el código:

package sample;
import com.trolltech.qt.gui.*;

public class Main extends QMainWindow{

    Ui_MainClass ui = new Ui_MainClass();
    public static void main(String[] args) {
        QApplication.initialize(args);
        Main testMain = new Main(null);
        testMain.show();
        QApplication.exec();  
    }
    //constructor
    public Main(QWidget parent){
        super(parent);
        ui.setupUi(this);
        ui.pushButton.clicked.connect(this, "go()");
        ui.textEdit.update();
    }
    public void go(){
        int numberOfIterations = Integer.parseInt(ui.lineEditIterations.text());
        for(int i=0; i<numberOfIterations; i++) {
            ui.textEdit.append(ui.lineEditText.text());
        }   
    }
}

Comments No Comments »

Cerrar
E-mail It