Development/Tutorials/Using KXmlGuiWindow (es): Difference between revisions
(translation to spanish) |
(translation to spanish) |
||
Line 45: | Line 45: | ||
#endif | #endif | ||
</code> | </code> | ||
En primer lugar, en la línea 7, hacemos que MainWindow herede de KXmlGuiWindow con <tt>class MainWindow : public KXmlGuiWindow</tt>. | |||
Luego declaramos el constructor con <tt>MainWindow(QWidget *parent=0);</tt>. | |||
Y por último declaramos un puntero al objeto que compondrá la mayor parte de nuestro programa: <tt>textArea</tt>. {{class|KTextEdit}} es un editor genérico de texto enriquecido con algunas sutilezas de KDE, como ocultación automática del cursor. | |||
===mainwindow.cpp=== | ===mainwindow.cpp=== | ||
Line 62: | Line 62: | ||
} | } | ||
</code> | </code> | ||
Lo primero que tenemos que hacer es incluir el archivo de cabecera que contiene la declaración de la clase (en la línea 1). | |||
En la línea 5, inicializamos nuestro editor de texto con un objeto. En la línea 6 usamos la función setCentralWidget() de KXmlGuiWindow para decirle a KXmlGuiWindow que debe aparecer en la sección central de la ventana. | |||
Por último, KXmlGuiWindow::setupGUI() | |||
is called which does a lot of behind-the-scenes stuff and creates the default menu bars (Settings, Help). | |||
==Actualizando main.cpp== | ==Actualizando main.cpp== |
Revision as of 15:20, 19 September 2008
Development/Tutorials/Using_KXmlGuiWindow
Languages: عربي | Asturianu | Català | Česky | Kaszëbsczi | Dansk | Deutsch | English | Esperanto | Español | Eesti | فارسی | Suomi | Français | Galego | Italiano | 日本語 | 한국어 | Norwegian | Polski | Português Brasileiro | Română | Русский | Svenska | Slovenčina | Slovenščina | српски | Türkçe | Tiếng Việt | Українська | 简体中文 | 繁體中文
Serie | Tutorial para principiantes |
Requisitos previos | Tutorial 1 - Hola Mundo |
Siguiente | Tutorial 3 - KActions y XMLGUI |
Lectura avanzada | KXmlGuiWindow |
Resumen
Este tutorial continua el camino iniciado por el tutorial Hola Mundo, haciendo una introducción a la clase KXmlGuiWindow.
En el tutorial anterior, el programa mostró una "caja de diálogo" (dialog box), ahora vamos a añadir mas funcionalidad al programa.
KXmlGuiWindow
La clase KXmlGuiWindow proporciona una vista de la venta principal con una barra de menú, una barra de herramientas, una barra de estado y un área principial en el centro del widget. La mayoria de las aplicaciones de KDE derivarán de esta clase, que proporciona una manera facil de definir el layout del menú y la barra de herramientas mediante archivos XML (esta tecnología se llama XMLGUI). Si bien no usaremos XMLGUI en este tutorial, lo haremos en el siguiente.
Con el fin de tener un KXmlGuiWindow que pueda usarse, debemos heredar de él. Por lo que creamos dos archivos, mainwindow.cpp y mainwindow.h que contendrán nuestro código.
mainwindow.h
- ifndef MAINWINDOW_H
- define MAINWINDOW_H
- include <KXmlGuiWindow>
- include <KTextEdit>
class MainWindow : public KXmlGuiWindow
{
public:
MainWindow(QWidget *parent=0);
private:
KTextEdit* textArea;
};
- endif
En primer lugar, en la línea 7, hacemos que MainWindow herede de KXmlGuiWindow con class MainWindow : public KXmlGuiWindow.
Luego declaramos el constructor con MainWindow(QWidget *parent=0);.
Y por último declaramos un puntero al objeto que compondrá la mayor parte de nuestro programa: textArea. KTextEdit es un editor genérico de texto enriquecido con algunas sutilezas de KDE, como ocultación automática del cursor.
mainwindow.cpp
- include "mainwindow.h"
MainWindow::MainWindow(QWidget *parent) : KXmlGuiWindow(parent)
{
textArea = new KTextEdit();
setCentralWidget(textArea);
setupGUI();
}
Lo primero que tenemos que hacer es incluir el archivo de cabecera que contiene la declaración de la clase (en la línea 1).
En la línea 5, inicializamos nuestro editor de texto con un objeto. En la línea 6 usamos la función setCentralWidget() de KXmlGuiWindow para decirle a KXmlGuiWindow que debe aparecer en la sección central de la ventana.
Por último, KXmlGuiWindow::setupGUI() is called which does a lot of behind-the-scenes stuff and creates the default menu bars (Settings, Help).
Actualizando main.cpp
Con el fin de ejecutar esta ventana, necesitamos añadir unas pocas lineas a main.cpp:
main.cpp
- include <KApplication>
- include <KAboutData>
- include <KCmdLineArgs>
- include "mainwindow.h"
int main (int argc, char *argv[])
{
KAboutData aboutData( "tutorial2", 0,
ki18n("Tutorial 2"), "1.0",
ki18n("A simple text area"),
KAboutData::License_GPL,
ki18n("Copyright (c) 2007 Developer") );
KCmdLineArgs::init( argc, argv, &aboutData );
KApplication app;
MainWindow* window = new MainWindow();
window->show();
return app.exec();
}
The only new lines here (compared to Tutorial 1) are 5, 18 and 19. On line 18, we create our MainWindow object and then on line 19, we display it.
CMake
La mejor manera de compilar el programa es usar CMake. Lo único que ha cambiado desde el tutorial 1 es que hemos añadido mainwindow.cpp a la lista de fuentes y hemos cambiado tutorial1 por tutorial2.
CMakeLists.txt
project (tutorial2)
find_package(KDE4 REQUIRED)
include_directories(${KDE4_INCLUDES})
set(tutorial2_SRCS
main.cpp
mainwindow.cpp
)
kde4_add_executable(tutorial2 ${tutorial2_SRCS})
target_link_libraries(tutorial2 ${KDE4_KDEUI_LIBS})
Compilando
Para compilarlo, enlazarlo y ejecutarlo, usa:
mkdir build && cd build cmake .. make ./tutorial2
Avanzando
Ahora puedes continuar con el Tutorial 3 - Usar KActions.