• 7231阅读
  • 4回复

windows 下启动界面的问题 [复制链接]

上一主题 下一主题
离线deng560
 
只看楼主 倒序阅读 楼主  发表于: 2009-12-15
[upload=1] 我在使用splash的时候,使用了Qtest 里面的 Qwait的函数,在pro文件里加了CONFIG += qtestlib。 但是运行的程序后面总是会有个 windows 命令行的窗口。真的让人很崩溃。 [upload=1]   就是附件中的问题。期望高手能与解答。在qt的群里都讨论过了。全是菜鸟级别的,没有人知道。困扰我几天了
wo
离线deng560
只看该作者 1楼 发表于: 2009-12-15
在windows下不能使用sleep函数的。在linux下面是可以的
wo
离线deng560
只看该作者 2楼 发表于: 2009-12-16
sleep  是static protect 函数,可以使用
class thread:public QThread
{
       public:
            void run();
};
void thread::run()
{
            sleep(2);
}

这样就可以使用sleep了,而且可以与平台无关。
也解决了我所说的那个问题。
因为Qt help里说的 Qtest 是调试使用的。 里面的Qwait ,当然会后面有个命令行了。 你可以试试
Qdebug(hello);
后面命令行会输出的。
wo
离线unitcode

只看该作者 3楼 发表于: 2010-03-28
int main(int argc,char **argv)
{
    QApplication app(argc,argv);
    app.setStyle("plastique");

    QSplashScreen *splash=new QSplashScreen;  
    splash->setPixmap(QPixmap(":/Images/splash.png"));  // 设置splash图片。

    MainWindow *mainWin=new MainWindow;

    splash->show();     // 显示splash。



// *********************************** 重     点 ****************************************
// 重绘splash一千次,虽然方法笨一点却毫无任何影响。

    for(int i=0;i<1000;i++)
    {
        splash->repaint();
    }

// *************************************************************************************


    mainWin->show();

    splash->finish(mainWin);
    delete splash;


    return app.exec();
}

其实 qt 对同一问题的解决方法有很多,遇到难题时,换换思考角度或许也有不错的收获哦。





<quote> "  在windows下不能使用sleep函数的。在linux下面是可以的  " </quote>
不是吧!
离线yfx2003

只看该作者 4楼 发表于: 2010-04-01
如果东西太少,qt自动认为不需要显示splash的

书中如是说
www.qtcn.org/gpq4/
ajaxref.okajax.com/
快速回复
限100 字节
 
上一个 下一个