elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  QT4 comboBox y Bloqueo del programa
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: QT4 comboBox y Bloqueo del programa  (Leído 2,207 veces)
mk_137

Desconectado Desconectado

Mensajes: 120



Ver Perfil
QT4 comboBox y Bloqueo del programa
« en: 2 Julio 2010, 20:09 pm »

Hola a todos,

Tengo un par de problemas con un programa que estoy haciendo.
Primero, me gustaria saber como bloquear un QcomboBox una vez seleccionada una opcion.

Y el otro problema es que al entrar en la funcion que hos pego debajo, al estar en un bucle sin fin si intento picar dentro de la ventana me dice que no responde.
Hay alguna manera de poder hacer el bucle pero que no me lanze el mensaje este,

Código:
void MainWindow::show_text()
{
    unsigned char uchar[256];
    string buff;
    QString qs;
    int nCom;
    std::stringstream stm;

    nCom = ui->comBox->currentIndex()+1;
    stm << nCom;

    if (!this->comhandle)
    {
        if ((this->comhandle = DllOpenComm(nCom)) == 0)
        {
            buff = "COM"+stm.str()+" : Puerto incorrecto";
            qs = buff.c_str();
            ui->errorBrowser->setText(qs);
        }
        else
        {
            ui->comBox->setFrame(false);
        }
    }

    if (this->comhandle)
    {
        buff = "COM"+stm.str()+" : Passar la tarjeta...";
        qs = buff.c_str();
        ui->errorBrowser->setText(qs);
        buff.clear();
        while (DllISO16693_Inventory(this->comhandle, uchar, buff) != 0)
        {
            buff.clear();
            Sleep(500);
        }
        qs = buff.c_str();
        ui->textBrowser->append(qs);
    }
}


En línea

O-LLOS-O


Desconectado Desconectado

Mensajes: 324


tengo 14 invitaciones para locker-z enviar mp


Ver Perfil
Re: QT4 comboBox y Bloqueo del programa
« Respuesta #1 en: 3 Julio 2010, 08:23 am »

Yo tube un problema similar, lo solucione con thread, el tema de que no respondia, pero sinceramente no me gusto nada la solucion, a mi tambien me gustaria que alguien puesiera otra si la hay.

Respecto a la primera pregunta no se muy bien a lo que te refieres, pq simplemente no lo desabilitas con un setEnable(False)?.

No se si te referias a eso....

Saludos


En línea

mk_137

Desconectado Desconectado

Mensajes: 120



Ver Perfil
Re: QT4 comboBox y Bloqueo del programa
« Respuesta #2 en: 4 Julio 2010, 02:19 am »

Yo tube un problema similar, lo solucione con thread, el tema de que no respondia, pero sinceramente no me gusto nada la solucion, a mi tambien me gustaria que alguien puesiera otra si la hay.
He estado pensando que en vez de entrar en el bucle que repite esa accion, programar algun alarm o algo, que cada X tiempo se vuelva a programar si no se cumple una condicion.

Respecto a la primera pregunta no se muy bien a lo que te refieres, pq simplemente no lo desabilitas con un setEnable(False)?.
Y sobre esto, muchas gracias, es exactamente lo que necesitava !!!

El problema es que es la primera vez que trabajo con QT, y buscando los QcomboBox encontre esto:
http://doc.qt.nokia.com/4.6/qcombobox.html
Y no aparecia la funcion que has comentado, pero acabo de caer que es una classe heredada de Qwidget y precisamente esa si que tiene el enabled.

Muchas gracias, me has enseñado algo muy importante.
En línea

O-LLOS-O


Desconectado Desconectado

Mensajes: 324


tengo 14 invitaciones para locker-z enviar mp


Ver Perfil
Re: QT4 comboBox y Bloqueo del programa
« Respuesta #3 en: 4 Julio 2010, 09:54 am »

Ves a a documentacion de QT alli esta toda la informacion sobre todo, yo he tocado desde hace unos tres meses PyQt que es Qt4 con python.

http://doc.trolltech.com/4.1/classes.html

Aqui tienes toda la documentacon de todas las clases, te recomiendo que utilizes ctrl+f para buscar xdxd
te dice todos los metodos de cada clase y para que sirven, espero qe te ayude,


En lo de que se queda bloqueado, yo lo he "solucionad" con los threads como te he dicho y con un timer... no se si sabes utilizar-lo, pero es facil, aunque sigue sin gustarmer debe de haber otra solucion....

mirate este link http://zetcode.com/tutorials/qt4tutorial/

saludos!!!

En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines