Namespaces
Variants
Actions
(Difference between revisions)

Archived:Como criar uma animação simples usando QTimeLine

Jump to: navigation, search
m
Line 25: Line 25:
 
==Pré-requisitos==
 
==Pré-requisitos==
  
* [http://pepper.troll.no/s60prereleases/| Fazer o Download da versão mais recente do Qt para Symbian].(Inglês)
+
* Baixe e instale a versão atual do Qt para Symbian segundo as instruções [[Qt para Symbian|deste artigo]].
* Instalar o Qt para Symbian:[[Installing Qt on S60]](Inglês)
+
* Verificar este link e analisar o guia de instalação: [http://pepper.troll.no/s60prereleases/doc/install-s60.html| Como instalar os pacotes].(Inglês)
+
* Visualizar este artigo: [[Primeiros passo, em Qt para Symbian]]
+
  
  

Revision as of 22:30, 1 November 2009

Original em: How to create a simple animation using QTimeLine, in Qt for Symbian


Article Metadata

Tested with
Devices(s): Emulator

Compatibility
Platform(s): S60 3rd Edition FP1, S60 3rd Edition FP2, S60 5th Edition

Article
Keywords: QTimeLine,QProgressBar
Created: (17 Jan 2009)
Last edited: lpvalente (01 Nov 2009)


Introdução

Este trecho de código, mostra como criar uma animação simples em [Qt for S60| Qt para Symbian]].

A classe QTimeLine, provêr uma linha de tempo para controlar animações.


Pré-requisitos

  • Baixe e instale a versão atual do Qt para Symbian segundo as instruções deste artigo.


Funcioanlidades

  • Esta propriedade mantem a direção da linha do tempo enquanto o está em estado de execução. O padrão é avançar.
timeLine->setDirection(QTimeLine::Backward);

Frowardtimeline.JPGBackWardtimeline.JPG

  • Esta propriedade tem a forma da curva da linha do tempo.
timeLine->setCurveShape(QTimeLine::EaseInCurve);
  • Para adicionar um Pause para pausar a TimeLine você deve adicionar o seguinte código no seu código fonte.


 connect(pushButton1, SIGNAL(clicked()), this, SLOT(viral()));

Adicione esta funcionalidade para o seu código atual.

 void timeline::viral(  timeLine->setPaused(1); }

Pauseani.JPG

Trecho de código

Código fonte

#include "timeline.h"
 
timeline::timeline(QWidget *parent)
: QWidget(parent)
{
layout= new QVBoxLayout(this);
progressBar = new QProgressBar(this);
progressBar->setRange(0, 100);
 
// Construct a 5-second timeline with a frame range of 0 - 100
timeLine = new QTimeLine(5000, this);
timeLine->setFrameRange(0, 100);
connect(timeLine, SIGNAL(frameChanged(int)), progressBar, SLOT(setValue(int)));
 
// Clicking the push button will start the progress bar animation
pushButton = new QPushButton(tr("Start animation"), this);
connect(pushButton, SIGNAL(clicked()), timeLine, SLOT(start()));
layout->addWidget(progressBar);
layout->addWidget(pushButton);
setLayout(layout);
}
 
timeline::~timeline()
{
// No need to delete any QObject that got proper parent pointer.
 
}

Arquivos de cabeçalhos

#ifndef TIMELINE_H
#define TIMELINE_H
 
#include <QtGui/QWidget>
#include "ui_timeline.h"
#include <QVBoxLayout>
#include <QTimeLine>
#include <QProgressBar>
#include <QPushButton>
class timeline : public QWidget
{
Q_OBJECT
 
public:
timeline(QWidget *parent = 0);
~timeline();
 
private:
QPushButton *pushButton;
QTimeLine *timeLine;
QProgressBar *progressBar;
QVBoxLayout *layout;
};
 
#endif // TIMELINE_H

Captura de tela

Pauseani.JPG

Timeline1.jpg

Timeline2.jpg

Para mais detalhes visite:este link(Inglês)

293 page views in the last 30 days.
Nokia Developer aims to help you create apps and publish them so you can connect with users around the world.

京ICP备05048969号  © Copyright Nokia 2013 All rights reserved