Jump to content
YOUR-AD-HERE
HOSTING
TOOLS

Locked Introduciendonos en QT y C++


Expermicid

Recommended Posts

Hola a todos.

Como siempre tengo ganas de aprender cosas nuevas. Se me ocurrio empezar un proyecto para no perder el tiempo y me dije porque no hacerlo en QT y C++. :D

 

Yo voy a arrancar desarrollando (paso a paso) una pequeña aplicacion, algo parecido a un Hola Mundo pero agregandole algunas cosas.

 

Vamos a hacer uso de QT Creator. Asi que lo abrimos.

 

This is the hidden content, please

 

Seleccionamos Create Project. Y se nos abrira la siguiente ventana.

 

This is the hidden content, please

 

Seleccionamos Qt Gui Application y apretamos en Choose...

 

This is the hidden content, please

 

En Name colocamos el nombre del proyecto y presionamos en Next >

Tambien podemos elegir la ruta en donde se guardara el proyecto.

 

This is the hidden content, please

 

En esta ocasion podriamos cambiar la ubicacion de los directorios Debug y Release. Pero lo vamos a dejar por defecto asi que nuevamente presionamos Next >

 

This is the hidden content, please

 

En Base Class seleccionamos QWidget, si desean pueden elegir los nombres de los archivo de cabecera, del widget y demas. Presionamos Next >

 

This is the hidden content, please

 

Y para terminar con la configuracion de proyecto elegimos Finish

 

Ya hecho todo, podran ver algo parecido a esto:

 

This is the hidden content, please

 

En donde podran apreciar que del lado izquierdo tenemos un treeview con el source de nuestro proyecto y del lado derecho el codigo.

 

Vamos a hacer la interface grafica, le hacemos doble click en widget.ui o el nombre que le hayan puesto al form o ventana.

 

This is the hidden content, please

 

Bien, ya podemos agregar los componentes al widget.

Es muy parecido a usar vb (para los que lo hayan usado). De un lado tenemos los componentes y del otro los atributos del elemento seleccionado, para configurarlo a nuestro gusto.

 

This is the hidden content, please

 

Agregue: 2 Label, 1 Line Edit, 2 RadoioButton y 1 PushButton. A los cuales les voy a cambiar el nombre y el texto de la siguiente manera.

 

This is the hidden content, please

 

Los cambios puede hacerlos desde la tabla de atributos o con el boton derecho y Change Text... o Change objectName...

 

Ya tenemos la ventana lista ahora tenemos que hacer los eventos o lo que en este caso se denominan las señales.

Para ello vamos a seleccionar el PushButton (es el unico en nuestra aplicacion que va a llevar una señal) click derecho y elegimos Go to slot...

Se nos abrira una ventana con todas las señales que el PushButton puede emitir.

 

This is the hidden content, please

 

Seleccionamos clicked() y luego OK.

 

This is the hidden content, please

 

Solo se nos va a uno de los archivos cpp en donde agrego este codigo:

 

[lenguaje=cpp]void Widget::on_btnSaludar_clicked()

{

 

}[/lenguaje]

 

Y es donde nosotros tenemos que poner el codigo que queramos que haga el PushButton.

Agregamos este code:

 

[lenguaje=cpp]QString str = ""; // String para crear la cadena

 

if (ui->rdbHola->isChecked()) // Verificamos que el PushButton Hola este Clickeado

{

str = "Hola "; // Ponemos 'Hola ' en str en caso de exito

}

else

{

str = "Chau "; // En caso contrario str vale 'Char '

}

 

if (ui->txtNombre->text() == "") // Verificamos que el LineEdit sea Vacio

{

str = str + "desconocido"; // Concatenamos a str 'desconocido' en caso de acierto

}

else

{

str = str + ui->txtNombre->text(); // En caso contrario concatenamos su valor

}

 

ui->lblSaludo->setText(str); // Seteamos el valor de Label lblSaludo con str

[/lenguaje]

 

Lo corremos y...

 

This is the hidden content, please

 

Espero que les haya servido.

 

Saludos

Edited by Expermicid
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.