sábado, 3 de enero de 2009

Personalizar tus ventanas en Qt::Ventanas sin marcos

Hola amigos, que tal?.

En mi pasar por la programación con Qt, he ido realizando algunas modificaciones a los componentes básicos para darle un aspecto diferente a mis aplicaciones.

Hoy les quiero mostrar parte de esas cosas que he hecho.

Ahora bien lo más importante... el código.

Archivo Cabecera

#ifndef SINMARCO_H
#define SINMARCO_H
#include
class SinMarco : public QWidget {
    Q_OBJECT
    public:
        SinMarco(QWidget *parent = 0);//CONSTRUCTOR, DEFINE QUE LA VENTANA SERA SIN MARCOS
        QSize sizeHint() const;//DEFINE EL TAMAÑO INICIAL DE LA VENTANA ESTA LINEA DE CODIGO ES OPCIONAL
};
#endif



Archivo CPP

#include "sinmarco.h"
SinMarco::SinMarco(QWidget *parent) : QWidget(parent, Qt::FramelessWindowHint) { //DEFINE QUE LA VENTANA SERA SIN MARCOS
    // LA BANDERA Qt::FramelessWindowHint EN EL CONSTRUCTOR QWidget 
    // ES LO UNICO QUE NECESITAMOS PARA HACER QUE NUESTRA APLICACIÓN NO POSEA EL MARCO DE VENTANAS (NI DEL SISTEMA NI DEL LENGUAJE)
}
QSize SinMarco::sizeHint() const {//DEFINE EL TAMAÑO INICIAL DE LA VENTANA OPCIONAL
    return QSize(1000, 130);
    // ESTOS VALORES PUEDEN SER MODIFICADOS A NUESTRO GUSTO

}

Archivo MAIN

#include
#include "sinmarco.h"
int main(int argc, char *argv[]) {
    QApplication app(argc, argv);
    SinMarco Ventana_Sin_Marco;
    Ventana_Sin_Marco.show();
    return app.exec();
}


Y así hemos concluido nuestra ventana sin marcos.

No hay comentarios: