标签:
杂谈 |
Qt的电子时钟是个老掉牙的demo了,但是利用lcdNumber显示的样子非常老土(下图第一个显示效果),一看就知道是从qt帮助文档里摘出来的example,毫无新意。
思路非常简单,就是利用label或者button贴图变化显示。

-
QString
Clock::getPngName(QChar x) - {
-
(x+QString( ".png")); - }
就可以了。真的很简单吧……
全部代码就这么几行:
-
Clock::Clock(QWidget
*parent) : -
QWidget(parent), -
ui( Ui::Clock) - {
-
ui->setupUi( -
-
-
timer = QTimer( this); -
connect(timer, SIGNAL(timeout()), SLOT(showTime())); -
timer->start(1000); -
showTime(); - }
-
-
Clock::~Clock()
-
{
-
ui; -
}
-
- void
Clock::showTime() - {
-
-
QTime time = QTime::currentTime(); -
QString text = time.toString( -
-
ui->lcdNumber->display(text); -
-
-
ui->hourh->setIcon(QPixmap( -
ui->hourl->setIcon(QPixmap( -
ui->minh->setIcon(QPixmap( -
ui->minl->setIcon(QPixmap( -
ui->sech->setIcon(QPixmap( -
ui->secl->setIcon(QPixmap( -
-
- }
-
-
QString
Clock::getPngName(QChar x) -
{
-
(x+QString( ".png")); -
}
其实demo很简单,重点是变换显示效果的思想和手段。
Any good ideas?