QT显示gif和flash动画的方法是什么
admin
2023-08-04 02:00:09
0
#include 
 #include 
 #include 
 #include 
 #include 
 #include 
#include   
#include 
//QAxObject * documents = word.querySubObject("Documents");
 void gifplay(QLabel *label)
 {
     label->show(); }
 void gifclose(QLabel *label)
 {     label->close(); }

 void flashplay(QAxWidget *flash) {
     flash->show();
 }
 void flashclose(QAxWidget *flash)
 {     flash->close();
 }
 int main(int argc, char *argv[])
 {
    QApplication a(argc, argv);
        QTextCodec::setCodecForLocale(QTextCodec::codecForName("gb18030"));
        //QTextCodec::setCodecForCStrings(QTextCodec::codecForName("gb18030"));
       // QTextCodec::setCodecForTr(QTextCodec::codecForName("gb18030"));

        QAxWidget *flash = new QAxWidget(0,0);
         flash->resize(600,400);
         flash->setControl(QString::fromUtf8("{d27cdb6e-ae6d-11cf-96b8-444553540000}"));
         QString name=qApp->applicationDirPath();
         flash->dynamicCall("LoadMovie(long,string)",0,qApp->applicationDirPath()+"/flash2.swf");
         flash->show();
        return a.exec();
   // QTextCodec *codec = QTextCodec::codecForName("GB2312"); //文本为GB2312编
   // QTextCodec::setCodecForLocale(codec);       //设置本地编码
    // QTextCodec::setCodecForCStrings(codec);     //设置字符串编码
    // QTextCodec::setCodecForTr(codec);
/*
     QAxWidget *flash = new QAxWidget(0,0);      //QAxWidget使用的是ActiveX插件
     flash->resize(800,600);                    //设置该控件的初始大小
     flash->setControl(QString::fromUtf8("{d27cdb6e-ae6d-11cf-96b8-444553540000}")); //设定控制器
     flash->dynamicCall("LoadMovie(long,string)",0,"D:\\QT_test\\build-donghua-Desktop_Qt_5_7_0_MinGW_32bit-Debug\\flash2.swf");   //

      //flash->dynamicCall("D:\\QT_test\\build-donghua-Desktop_Qt_5_7_0_MinGW_32bit-Debug\\flash2.swf",0,0);   //
     flash->setWindowFlags(Qt::FramelessWindowHint);   //去除边框

     //ui-> wInfoShow-> setPlainText( flash-> dynamicCall( "TotalFrames" ). toString());//获得属性
         flash-> dynamicCall( "FrameNum" , 200 );//设置属性
     flashplay(flash);
     QTime t;
     t.start();
     while(t.elapsed()<50000)
     {
         QApplication::processEvents();
     }
     flashclose(flash);   */
/*2016nian测试播放GIF 没有问题*/
    /*
     QMovie *movie;
     movie = new QMovie(".\\gif1.gif");
     QLabel *label=new QLabel ("", 0);
     label->setGeometry( 300, 300, 500, 500 );
     label->setMovie(movie);
     label->setScaledContents(true);
     movie->start();
     gifplay(label);
     QTime t;
     t.start();
     while(t.elapsed()<20000)
     {
         QApplication::processEvents();
     }
     gifclose(label);
     */
    return a.exec();
 }

相关内容

热门资讯

国际乒联正式恢复俄罗斯运动员参... 据国际乒联7月13日发布的消息,国际乒联执行董事会10日召开线上会议,专题审议俄罗斯运动员参与国际乒...
台湾“毒油风暴”扩大!蒋万安喊... 针对台湾“中联致癌油风暴”延烧,台北市长蒋万安13日受访表示,他再一次提醒赖清德,相关官员已经很明确...
央企担当融入城市温情,中海爱心... 盛夏七月,瓜果飘香,河南开封等西瓜主产区迎来丰收,却因市场供需变化遭遇销售难题。面对部分瓜农的“丰收...
关口前移、预防为先——多地强化... 近期,极端天气多发频发,防汛形势严峻复杂。记者在采访中了解到,多地强化监测预警和应急救援准备,扎实做...
外交部发布重磅视频《南海听涛》 7月13日,外交部发言人办公室发布双语重磅视频《南海听涛》,视频以历史叙事结合法理阐释的形式,再度重...
挺进“生命禁区” 架设绿电天路 横断山脉深处,褶皱纵横,雪线延绵。在西藏昌都左贡县平均海拔4400米的风雪线上,空气含氧量不足内地的...
泰国总理阿努廷将访华 外交部发言人宣布:应国务院总理李强邀请,泰国总理阿努廷将于7月16日至20日对中国进行正式访问。
女子遭前男友入室杀害,母亲:交... 7月13日上午,西安22岁女子遭前男友入室杀害案在西安市中级人民法院开庭审理。
伊朗动画演绎美参议员格雷厄姆之... 7月12日,伊朗乐高风格视频制作团队就美国参议员林赛·格雷厄姆之死发布了最新短片。动画中,一名戴着兜...
三洋洗衣机启动键失灵如何启动 如果三洋洗衣机的启动键失灵,你可以尝试以下方法来启动洗衣机:1. 检查电源:确保洗衣机已经连接到电源...