🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #649

Re: Pausar un programa, C++, QT Designer, KDE

#649
From: Francisco Gayá
Date: Mon, 15 Jan 2007 23:35
73 lines
3200 bytes
rvm ha escrito:


> Pues ya me contarás cómo lo has hecho. ¿Realmente estás usando el sleep() de Qt
> o el de otra librería?

Estoy usando el sleep() de Qt versión 3.3.5

> Lo digo porque yo también me he topado recientemente con este problema.
>
> Si pongo
>
> #include <qthread.h>
> ...
>
> msleep(200);
>
> me da un fallo al compilar:
> error: `msleep' undeclared (first use this function)
>
> Si pongo:
> QThread::msleep(200);
>
> me suelta que:
> error: `static void QThread::msleep(long unsigned int)' is protected

Acabo de probar el msleep() y me da los mismos errores que a tí, pero
la función sleep(), que se diferencia en la precisión de sólo
segundos, funciona perfectamente, incluso sin el #include <qthread.h>

Por aquí te pego un trozo del programa que estaba haciendo, que no da
problemas:

#include <qdatetime.h>

int espera, intento, tiempo;
double tot;
QTime inici, final, t;

void Form1::tirada()
{
    inicio->setEnabled(false);
    t = QTime::currentTime();
    srand( t.minute()*60+t.second() );
    espera = rand()/429496729+3;
    sleep(espera);
    textLabel1->setPaletteBackgroundColor(0x00FF00);
    inici = QTime::currentTime();
    boton->setEnabled(true);
}


> Total, que buscando por ahí encontré esto, que sí me funciona:
>
> class Sleeper : public QThread
> {
> public:
>         static void sleep(unsigned long secs) {QThread::sleep(secs);}
>         static void msleep(unsigned long msecs) {QThread::msleep(msecs);}
>         static void usleep(unsigned long usecs) {QThread::usleep(usecs);}
> };
>
> Sleeper::msleep(200);
>
> --
> rvm
> http://smplayer.sf.net/

Tomo nota, ya que posiblemente lo necesite.

Saludos.
Technical Details
Message-ID: <1168904112.814950.26770@l53g2000cwa.googlegroups.com>
Path: arc1-ca.pugleaf.net!g2news2.google.com!postnews.google.com!l53g2000cwa.googlegroups.com!not-for-mail
References: <1168887787.090694.227820@s34g2000cwa.googlegroups.com> <20070115200902.51d88a03@petres.salonet.snet> <1168892370.694622.184410@51g2000cwl.googlegroups.com> <kcbt74-la8.ln1@dominio.inventado>

Show Full Headers
Complete Article Headers
X-Google-Thread: f86c8,46e1bcc69d1fde5
X-Google-Attributes: gidf86c8,public
X-Google-Language: SPANISH,ASCII
Path: arc1-ca.pugleaf.net!g2news2.google.com!postnews.google.com!l53g2000cwa.googlegroups.com!not-for-mail
From: "Francisco Gayá" <gaya1@wanadoo.es>
Newsgroups: es.comp.os.linux.programacion
Subject: Re: Pausar un programa, C++, QT Designer, KDE
Date: 15 Jan 2007 15:35:12 -0800
Organization: http://groups.google.com
Lines: 74
Message-ID: <1168904112.814950.26770@l53g2000cwa.googlegroups.com>
References: <1168887787.090694.227820@s34g2000cwa.googlegroups.com>
   <20070115200902.51d88a03@petres.salonet.snet>
   <1168892370.694622.184410@51g2000cwl.googlegroups.com>
   <kcbt74-la8.ln1@dominio.inventado>
NNTP-Posting-Host: 88.1.186.207
Mime-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
X-Trace: posting.google.com 1168904129 12983 127.0.0.1 (15 Jan 2007 23:35:29 GMT)
X-Complaints-To: groups-abuse@google.com
NNTP-Posting-Date: Mon, 15 Jan 2007 23:35:29 +0000 (UTC)
In-Reply-To: <kcbt74-la8.ln1@dominio.inventado>
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/5.0 (X11; U; Linux i686; es-ES; rv:1.8.0.3) Gecko/20060425 SUSE/1.5.0.3-7 Firefox/1.5.0.3,gzip(gfe),gzip(gfe)
Complaints-To: groups-abuse@google.com
Injection-Info: l53g2000cwa.googlegroups.com; posting-host=88.1.186.207;
   posting-account=NMbnFQ0AAADsz29hvS4vc4qFBYYI0idj