zoukankan      html  css  js  c++  java
  • Qt系统对话框中文化及应用程序实现重启及使用QSS样式表文件及使用程序启动界面

    一、应用程序中文化

    1).Qt安装目录下有一个目录translations/,在此目录下有qt_zh_CN.ts和 qt_zh_CN.qm
    把它们拷贝到你的工程目录下。

    2).在main函数加入下列代码:
    QTranslator translator(0); 
    translator.load("qt_zh_CN.qm");
    QApplication app(argc, argv);
    app.installTranslator(&translator);
    别忘了头文件包含QTranslator

    二、应用程序实现重启

    
    
    void CGUIfeaturesList::on_restartBtn_clicked()
    {
        qApp->quit();
        QProcess::startDetached(qApp->applicationFilePath(), QStringList());
    }

    三、使用QSS样式表文件

    QFile file("./style.qss");
        file.open(QFile::ReadOnly);
        QString styleSheet = QLatin1String(file.readAll());
        qApp->setStyleSheet(styleSheet);
        file.close();

    四、使用程序启动界面

    QPixmap pixmap("./start.png");
        QSplashScreen splash(pixmap);
        splash.show();
    
    
        QTime dieTime = QTime::currentTime().addMSecs(3000);
        while( QTime::currentTime() < dieTime )
           a.processEvents(QEventLoop::AllEvents, 100);
    
    
        
        MainWindow w;
        w.move((QApplication::desktop()->width() - w.width())/2,(QApplication::desktop()->height() - w.height())/2);
        w.show();
    
    
        splash.finish(&w);

    main.cpp文件参考如下:

    
    
    #include <QTextCodec>
    #include <QPixmap>
    #include <QSplashScreen>
    #include <QTime>
    #include <QTextCodec>
    #include <QFile>
    #include <QTranslator>
    #include <QtGui>
    
    
    int main(int argc, char *argv[])
    {
        QTranslator translator(0);//标准对话框中文化
        translator.load("qt_zh_CN.qm");
        QApplication a(argc, argv);
        a.installTranslator(&translator);
    
    
        QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
        QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
        QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
    //    QTextCodec::setCodecForTr(QTextCodec::codecForName(QTextCodec::codecForLocale()->name()));
    //    QTextCodec::setCodecForLocale(QTextCodec::codecForName(QTextCodec::codecForLocale()->name()));
    //    QTextCodec::setCodecForCStrings(QTextCodec::codecForName(QTextCodec::codecForLocale()->name()));
    
    
        QFile file("./style.qss");
        file.open(QFile::ReadOnly);
        QString styleSheet = QLatin1String(file.readAll());
        qApp->setStyleSheet(styleSheet);
        file.close();
    
    
        QPixmap pixmap("./start.png");
        QSplashScreen splash(pixmap);
        splash.show();
    
    
        QTime dieTime = QTime::currentTime().addMSecs(3000);
        while( QTime::currentTime() < dieTime )
           a.processEvents(QEventLoop::AllEvents, 100);
    
    
        CGUIfeaturesList w;
        w.move((QApplication::desktop()->width() - w.width())/2,(QApplication::desktop()->height() - w.height())/2);
        w.show();
    
    
        splash.finish(&w);
        
        return a.exec();
    }

    http://blog.csdn.net/liuguangzhou123/article/details/8079996

  • 相关阅读:
    Centos 7安装配置NTP网络时间同步服务器
    Git忽略提交规则 .gitignore配置运维总结
    linux scp放后台执行方法
    《Linux Kernel Development》读书笔记PDF下载(2012.5.7最后更新)
    D4整体架构差不多快出来了
    c#实现IOleCommandTarget接口(原闯)
    centos7一键安装samba服务器
    R语言绘图高质量输出
    R语言与数据分析
    R语言Cairo包的使用
  • 原文地址:https://www.cnblogs.com/findumars/p/6361982.html
Copyright © 2011-2022 走看看