Archived:Creating a Digital Clock QWidget
hamishwillee
(Talk | contribs) m (Added category Category:Qt. (Adding Qt to all Qt for Symbian topics (which is about to be removed))) |
hamishwillee
(Talk | contribs) m (Added category Category:Symbian. (Preparing for ontology change)) |
||
| Line 93: | Line 93: | ||
== Screenshot== | == Screenshot== | ||
| − | [[Image:Digitalclocklarge.jpg]] [[Category:Qt]] | + | [[Image:Digitalclocklarge.jpg]] [[Category:Qt]] [[Category:Symbian]] |
Revision as of 08:33, 1 April 2011
Article Metadata
Tested with
Devices(s): Emulator
Compatibility
Platform(s): S60 3rd Edition FP1, S60 3rd Edition FP2, S60 5th Edition
Article
Keywords: QLCDNumber,QTimer,QString
Created: (17 Feb 2009)
Last edited: hamishwillee
(01 Apr 2011)
Overview
This code snippet demonstrates how to create a simple digital clock widget in Qt for S60.
Preconditions
- Download and Install latest version Qt for Symbian - Installation packages which has links on how to install the latest version
Source File
#include <QtGui>
#include "digitalclock.h"
DigitalClock::DigitalClock(QWidget *parent)
: QLCDNumber(parent)
{
setSegmentStyle(Filled);
setNumDigits(8);
setStyleSheet("* { background-color:rgb(199,147,88);color:rgb(255,255,255); padding: 7px}}");
QTimer *timer = new QTimer(this);
connect(timer, SIGNAL(timeout()), this, SLOT(displayTime()));
timer->start(1000);
displayTime();
setWindowTitle(tr("Digital Clock"));
resize(300, 120);
}
Digital::~Digital()
{
//parent object will destroy timer automatically.
}
void DigitalClock::displayTime()
{
QTime time = QTime::currentTime();
QString text = time.toString("hh:mm:ss");
if ((time.second() % 2) == 0)
{text[2] = ' ';
text[5] = ' ';
}
display(text);
}
Header File
#ifndef DIGITALCLOCK_H
#define DIGITALCLOCK_H
#include <QLCDNumber>
class DigitalClock : public QLCDNumber
{
Q_OBJECT
public:
DigitalClock(QWidget *parent = 0);
private slots:
void displayTime();
};
#endif


