欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: Qt之QTimer [打印本頁(yè)]

作者: heicc    時(shí)間: 2015-1-5 15:28
標(biāo)題: Qt之QTimer
  在Qt開發(fā)界面的時(shí)候,非常多的時(shí)候都得使用定時(shí)器,定時(shí)器具體可以干什么呢?比如:QTimer控制時(shí)鐘、QTimer定時(shí)改變樣式、QTimer改變進(jìn)度等。。。說到這里,經(jīng)常使用QQ,而不同的時(shí)段都會(huì)顯示不同的背景,我認(rèn)為如果用Qt實(shí)現(xiàn)的話,就得使用QTimer定時(shí)的獲取時(shí)間,判斷當(dāng)前時(shí)間為morning、noon、afternoon、night來改變當(dāng)前的背景。。。    雖然QTimer簡(jiǎn)單易用,但是比較耗內(nèi)存,所以在不必要的時(shí)候就必須終止它。。。

QTimer構(gòu)造:
  QTimer timer = new QTimer();

QTimer設(shè)置超時(shí)并啟動(dòng):
  timer->setInterval(1000);
  timer->start();
或:timer->start(1000);

QTimer改變定時(shí)間隔為msec毫秒
  timer->changeInterval(msec);
如果這個(gè)定時(shí)器信號(hào)是運(yùn)行的,它將會(huì)被停止并且重新開始,否則它將會(huì)被開始。

QTimer是否則正在運(yùn)行
  timer->isActive()
如果定時(shí)器正在運(yùn)行,返回真,否則返回假。

QTimer停止
  timer->stop();

當(dāng)達(dá)到超時(shí)時(shí)間,則發(fā)射信號(hào),執(zhí)行指定的槽函數(shù)
  connect(timer, SIGNAL(timeout()), this, SLOT(myTimeout()));

    以下是利用QTimer來控制一個(gè)進(jìn)度條,超時(shí)時(shí)間為1000毫秒(1秒),當(dāng)達(dá)到超時(shí)時(shí)間時(shí),進(jìn)度條增加1%,當(dāng)進(jìn)度條為100%時(shí),停止Qtimer。

MyWidget::MyWidget(QWidget *parent) :
QWidget(parent)
{
  this->setFixedSize(400, 300);
  progress_value = 0;
  timer = new QTimer();
  timer->setInterval(1000);
  timer->start();
  progress_bar = new QProgressBar(this);
  progress_bar->setGeometry(50, 50, 150, 20);
  progress_bar->setValue(0);
  connect(timer, SIGNAL(timeout()), this, SLOT(changeValue()));
}
void MyWidget::changeValue()
{
  progress_value++;
  if(progress_value > 100)
  {
    timer->stop();
  }
  progress_bar->setValue(progress_value);
}

效果圖:

注:
    技術(shù)在于交流、溝通,轉(zhuǎn)載請(qǐng)注明出處并保持作品的完整性。






歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1