Arriba

Esquema Básico De Una Aplicación KDE

Para poder empezar a programar en KDE crearemos una simple aplicación, la más básica que se puede hacer, para luego ir añadiendo otros elementos posteriormente. El programa más básico es una simple ventana que se abrirá al ejecutarse, luego en otros posts iremos añadiendo los menúes, barra de botones, etc.

Primero creamos un directorio llamado kapp y luego creamos un archivo llamado kapp.cpp y le colocamos el código siguiente:

#include <kapp.h>
#include <kmainwindow.h>

int main( int argc, char **argv ) {
  KApplication kaplicacion(argc, argv, "Esquema Básico");
  KMainWindow *mw = new KMainWindow(0, "KMainWindow");
  kaplicacion.setMainWidget(mw);
  mw->show();
  return kaplicacion.exec();
}

Para poder compilar el código necesitamos crear el Makefile del proyecto. Siendo un código tan sencillo podríamos compilarlo simplemente escribiendo:

$ g++ -I/usr/kde/3.5/include -I/usr/qt/3/include/ -L/usr/kde/3.5/lib/ \ 
-L/usr/qt/3/lib/ -lkdeui -o kapp kapp.cpp

La biblioteca libkdeui es la que tiene el código de todos los widgets usados en KDE. Las opciones -I y -L le indican al compilador donde buscar los encabezados y las bibliotecas respectivamente, mientras que la -l le dice que enlace dinámicamente el binario con esa biblioteca. Para aprender un poco más usaremos qmake dentro del directorio para crear el archivo de proyecto. Para ello ejecutamos lo siguiente:

$ qmake -project

Si probamos a crear el Makefile con las opciones del archivo kapp.pro y luego compilar tendremos varios errores debido a que qmake no sabe nada de las bibliotecas y encabezados de KDE por lo que no añadió las rutas ni las bibliotecas necesarias. Por lo tanto debemos editar el archivo kapp.pro para que quede de la siguiente manera:

INCLUDEPATH = /usr/kde/3.5/include/
LIBS = -lkdeui -L/usr/kde/3.5/lib
TEMPLATE = app
TARGET = kaplicacion
DEPENDPATH = .
SOURCES += kapp.cpp

Ahora sí ejecutamos:

$ qmake
$ make

Una vez finalizado el proceso de compilación habrá sido creado un archivo binario llamado kaplicacion el cual al ser ejecutado abre una ventana vacía como la siguiente:

Ventana sencilla en KDE

Una pequeña explicación del código anterior sería la siguiente:

#include <kapp.h>
#include <kmainwindow.h>

kapp.h tiene las declaraciones para las aplicaciones KDE mientras que kmainwindow.h tiene las declaraciones para la ventana principal usada por una aplicación.

KApplication kaplicacion(argc, argv, "kaplicacion");

Con esto creamos una aplicación llamada kaplicacion y le pasamos los parámetros de la línea de comandos.

KMainWindow *mw =new KMainWindow;
kaplicacion.setMainWidget(mw);

Ahora creamos una ventana principal y la asignamos como widget principal de la aplicación.

mw->show();
return kaplicacion.exec()

Una vez creada la mostramos y esperamos que retorne.

En el próximo artículo veremos como crear un esquema básico pero creando una subclase de KMainWindow para poder añadir funcionalidades más adelante.

1 comentarios:

  1. Anónimo

    Muy buena tu iniciativa del blog, y muy entendible también!