Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

I Wanna show swf (flash) in Qt Widget app



  • hi friends...
    i'm a beginner in qt framework...
    i wanna load and show a flash swf file in qt widget and my work will release for android and pc (win7) platforms...but i don't know how can i do it?
    if i can load an swf file in bytearray style (retrieve from encrypted bytes not load (IO) from external file) ,it will be a great success for me to handle a great qt project...thanks...



  • Hi,
    For Andriod your a bit to fast. It's on the agenda to be released SOON. Qt 5.1 or Qt5.2 if I'm not mistake, but to answer your question how to show a large file in Qt. Take a look at QTextEdit (ai my mistake, it is now the QTextBrowser) widget.
    It is a standard display of text with scrollbar etc capabilities.
    Greetz



  • Hi, Just checked it, but QTextEdit is an input widget so data is able to be changed (if you need it). The QTextBrowser is just to show text.





  • thx for reply dear friend...
    but i need to just load a swf byte and show swf (flash) in qt widget...
    i have no requirement to load a big file..just an swf file to show...suppose that you have a 3d gallery in swf format (made by adobe flash ide) and now you wanna load and show it by pass its bytes(not io mode)...
    so is it possible to do it for android or at least for windows platform?



  • @belab
    thx but do you mean that it is the best way to load swf in widget???
    i listened that there is a class that load it in widget...it's name is QAxWidget
    so do you think QWebView is better than QAxWidget...(i want to load it as bytearray)



  • I'm not sure about the best way, but QAxWidget would be an option only for windows.



  • thx...



  • hi
    i wanna show swf by QAxWidget and when i use it for showing and loading swf in my widget , it throws me an error...
    this is my code :
    @
    #include "mainwindow.h"
    #include "ui_mainwindow.h"
    #include "QAxWidget"
    #include "QTextEdit"
    #include "QString"
    #include "QDir"

    MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
    {
    ui->setupUi(this);
    QAxWidget *flash = new QAxWidget(this);
    flash->resize(740, 580);
    flash->setControl(QString::fromUtf8("{d27cdb6e-ae6d-11cf-96b8-444553540000}"));
    flash->dynamicCall("LoadMovie(long,string)", 0,QDir::currentPath()+"/file.swf");
    }

    MainWindow::~MainWindow()
    {
    delete ui;
    }
    @

    and this is error message :
    bq. undefined reference to 'QAxWidget::QAxWidget(QWidget*,QFlagsQt::WindowType)'

    really i have no idea for solving that...Qt is very Confusing..!



  • yeah i have solved the problem...
    the solution is in adding below command in .pro file...
    CONFIG += qaxcontainer
    thx Qt...



  • ++Hadi++ Thanks!

    But CONFIG+=qaxcontainer is deprecated

    In QT5:

    @QT += axcontainer@


Log in to reply