自己制作的动态相册(QT) - 辉常的D调

时间:2024-02-17 16:12:46

自己制作的动态相册(QT)

参考:http://blog.csdn.net/yiyaaixuexi/article/details/6747737 与众不同的电子时钟

又是周六的下午,闲来无事在CSDN逛逛,看到一个Qt小Demo,采用图片的方式显示电子表;

1、获得系统时间:QTime time = QTime::currentTime();
2、转化为QString格式:QString text = time.toString("hh:mm:ss"); 
3、根据text[i]选择相应的图片:ui->secl->setIcon(QPixmap(this->getPngName(text[7]);

根据它自己做了个动态相册,其实就是一样的,不过是自己敲的代码,所以记录一下

 1 #ifndef MAINWINDOW_H
 2 #define MAINWINDOW_H
 3 
 4 #include <QMainWindow>
 5 #include <QTimer>
 6 #include <QTime>
 7 
 8 namespace Ui {
 9 class MainWindow;
10 }
11 
12 class MainWindow : public QMainWindow
13 {
14     Q_OBJECT
15     
16 public:
17     explicit MainWindow(QWidget *parent = 0);
18     ~MainWindow();
19 
20     QTimer *timer;
21 
22     QString getPngName(QChar x);
23     
24 private:
25     Ui::MainWindow *ui;
26 
27 public slots:
28     void showTime();
29 
30 };
31 
32 #endif // MAINWINDOW_H
 1 #include "mainwindow.h"
 2 #include "ui_mainwindow.h"
 3 #include <QLabel>
 4 
 5 MainWindow::MainWindow(QWidget *parent) :
 6     QMainWindow(parent),
 7     ui(new Ui::MainWindow)
 8 {
 9     ui->setupUi(this);
10 
11     timer = new QTimer(this);
12     connect(timer,SIGNAL(timeout()),this,SLOT(showTime()));
13     timer->start(1000);//1秒触发一次
14     showTime();//一开始显示图片
15 }
16 
17 MainWindow::~MainWindow()
18 {
19     delete ui;
20 }
21 
22 void MainWindow::showTime()
23 {
24     /*
25     QDateTime time = QDateTime::currentDateTime();
26     QString text = time.toString("yyyy-MM-dd hh:mm:ss");//设置时间的显示格式
27 */
28     QTime time = QTime::currentTime();
29     QString text = time.toString("hh:mm:ss");
30 
31     ui->lcdNumber->display(text);
32     // ui->hourh->setPixmap(QPixmap(this->getPngName(text[0])));
33     //  ui->hourl->setPixmap(QPixmap(this->getPngName(text[1])));
34     //ui->minh->setPixmap(QPixmap(this->getPngName(text[3])));
35     //ui->minl->setPixmap(QPixmap(this->getPngName(text[4])));
36     //ui->sech->setPixmap(QPixmap(this->getPngName(text[6])));
37     //ui->secl->setPixmap(QPixmap(this->getPngName(text[7])));
38     ui->label->setPixmap(QPixmap(this->getPngName(text[7])));
39 
40 }
41 
42 QString MainWindow::getPngName(QChar x)
43 {
44     return (x + QString(".ico"));
45 }

现在是根据固定的图片名字来选择的,希望以后能改成自动搜索目录实现图片的动态加载