Article View: es.comp.os.linux.programacion
Article #649Re: Pausar un programa, C++, QT Designer, KDE
From: Francisco Gayá
Date: Mon, 15 Jan 2007 23:35
Date: Mon, 15 Jan 2007 23:35
73 lines
3200 bytes
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-mailReferences:
<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