Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. FramelessWindowHint freezes form with QAxWidget
QtWS25 Last Chance

FramelessWindowHint freezes form with QAxWidget

Scheduled Pinned Locked Moved Unsolved General and Desktop
qaxwidgetframelesswindowbug
24 Posts 3 Posters 10.2k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M mrjj
    4 May 2016, 12:31

    Hi
    That sounds odd.
    Have you tried to create the QAxWidget later ?
    Like via button.
    After window is up and running etc.
    Im wondering if QAxWidget get truma if put in
    UI and then u set FramelessWindowHint in code.

    T Offline
    T Offline
    Tikitko
    wrote on 4 May 2016, 12:43 last edited by Tikitko 5 Apr 2016, 12:44
    #3

    I do everything on pure paper for the test...
    i create 2 example photo:
    no initialized qAxWidget
    initialized qAxWidget

    M 1 Reply Last reply 4 May 2016, 12:49
    0
    • T Tikitko
      4 May 2016, 12:43

      I do everything on pure paper for the test...
      i create 2 example photo:
      no initialized qAxWidget
      initialized qAxWidget

      M Offline
      M Offline
      mrjj
      Lifetime Qt Champion
      wrote on 4 May 2016, 12:49 last edited by
      #4

      @Tikitko
      Ok, but in both cases, its included in the UI from start?
      It seems once active it dont like FramelessWindowHint

      I would look in
      https://bugreports.qt.io/secure/Dashboard.jspa

      and also test if you insert from code only
      not having it in UI .

      T 1 Reply Last reply 4 May 2016, 12:54
      0
      • M mrjj
        4 May 2016, 12:49

        @Tikitko
        Ok, but in both cases, its included in the UI from start?
        It seems once active it dont like FramelessWindowHint

        I would look in
        https://bugreports.qt.io/secure/Dashboard.jspa

        and also test if you insert from code only
        not having it in UI .

        T Offline
        T Offline
        Tikitko
        wrote on 4 May 2016, 12:54 last edited by
        #5

        @mrjj
        I tried so

        MainWindow::MainWindow(QWidget *parent) :
            QMainWindow(parent),
            ui(new Ui::MainWindow)
        {
            ui->setupUi(this);
            this->setWindowFlags(Qt::FramelessWindowHint);
        }
        

        like this

        void MainWindow::on_pushButton_clicked()
        {
            this->setWindowFlags(Qt::FramelessWindowHint);
            this->show();
        }
        

        and

        int main(int argc, char *argv[])
        {
            QApplication a(argc, argv);
            MainWindow w;
            w.setWindowFlags(Qt::FramelessWindowHint);
            w.show();
            qDebug() << w.windowFlags();
        
            return a.exec();
        }
        
        1 Reply Last reply
        0
        • M Offline
          M Offline
          mrjj
          Lifetime Qt Champion
          wrote on 4 May 2016, 12:56 last edited by
          #6

          @Tikitko said:

          setWindowFlags(Qt::FramelessWindowHint);

          ok, but the flag is not the issue. that works.

          I was thinking about
          void MainWindow::on_pushButton_clicked()
          {
          QAxWidget *Test = new QAxWidget(this);
          Test->Show();
          .. other setup

          and not have it in UI.
          just to test.

          T 1 Reply Last reply 4 May 2016, 13:06
          0
          • M mrjj
            4 May 2016, 12:56

            @Tikitko said:

            setWindowFlags(Qt::FramelessWindowHint);

            ok, but the flag is not the issue. that works.

            I was thinking about
            void MainWindow::on_pushButton_clicked()
            {
            QAxWidget *Test = new QAxWidget(this);
            Test->Show();
            .. other setup

            and not have it in UI.
            just to test.

            T Offline
            T Offline
            Tikitko
            wrote on 4 May 2016, 13:06 last edited by Tikitko 5 Apr 2016, 13:10
            #7

            @mrjj hmm
            i do this:

            void MainWindow::on_pushButton_clicked()
            {
                QAxWidget *Test = new QAxWidget(this);
                Test->setControl("{8856f961-340a-11d0-a96b-00c04fd705a2}");
                Test->dynamicCall("Navigate(const  QString&)","http://vk.com/");
                Test->show();
            }
            

            And work! this bug work when i create QAxWidget in Disigner...


            Hmm when i creat not in on_pushButton_clicked also this bug...

            1 Reply Last reply
            0
            • M Offline
              M Offline
              mrjj
              Lifetime Qt Champion
              wrote on 4 May 2016, 13:10 last edited by mrjj 5 Apr 2016, 13:11
              #8

              well my "theory" is that
              if QAxWidget is assigned to a parent before FramelessWindowHint
              then bug comes.

              T 1 Reply Last reply 4 May 2016, 13:21
              0
              • M mrjj
                4 May 2016, 13:10

                well my "theory" is that
                if QAxWidget is assigned to a parent before FramelessWindowHint
                then bug comes.

                T Offline
                T Offline
                Tikitko
                wrote on 4 May 2016, 13:21 last edited by Tikitko 5 Apr 2016, 13:21
                #9

                @mrjj Then the solution is not to create QAxWidget in the constructor?

                M 1 Reply Last reply 4 May 2016, 13:22
                0
                • T Tikitko
                  4 May 2016, 13:21

                  @mrjj Then the solution is not to create QAxWidget in the constructor?

                  M Offline
                  M Offline
                  mrjj
                  Lifetime Qt Champion
                  wrote on 4 May 2016, 13:22 last edited by mrjj 5 Apr 2016, 13:24
                  #10

                  Well I assume u tested that ?
                  Create it after setupUI and FramelessWindowHint does not make it work ?

                  If no, you can try with the showEvent
                  void maiwinxx::showEvent( QShowEvent* event ) {
                  QMainwindxx::showEvent( event );

                  // create it here.

                  }

                  T 1 Reply Last reply 4 May 2016, 13:34
                  0
                  • M mrjj
                    4 May 2016, 13:22

                    Well I assume u tested that ?
                    Create it after setupUI and FramelessWindowHint does not make it work ?

                    If no, you can try with the showEvent
                    void maiwinxx::showEvent( QShowEvent* event ) {
                    QMainwindxx::showEvent( event );

                    // create it here.

                    }

                    T Offline
                    T Offline
                    Tikitko
                    wrote on 4 May 2016, 13:34 last edited by
                    #11

                    @mrjj i create:

                    void MainWindow::showEvent( QShowEvent* event ) {
                    
                        QAxWidget *Test = new QAxWidget(this);
                        Test->setControl("{8856f961-340a-11d0-a96b-00c04fd705a2}");
                        Test->dynamicCall("Navigate(const  QString&)","http://vk.com/");
                        Test->show();
                    
                    }
                    

                    Not help...
                    Excuse me, I find it hard to understand you, because I'm Russian ...

                    M 1 Reply Last reply 4 May 2016, 13:37
                    0
                    • T Tikitko
                      4 May 2016, 13:34

                      @mrjj i create:

                      void MainWindow::showEvent( QShowEvent* event ) {
                      
                          QAxWidget *Test = new QAxWidget(this);
                          Test->setControl("{8856f961-340a-11d0-a96b-00c04fd705a2}");
                          Test->dynamicCall("Navigate(const  QString&)","http://vk.com/");
                          Test->show();
                      
                      }
                      

                      Not help...
                      Excuse me, I find it hard to understand you, because I'm Russian ...

                      M Offline
                      M Offline
                      mrjj
                      Lifetime Qt Champion
                      wrote on 4 May 2016, 13:37 last edited by
                      #12

                      @Tikitko
                      Hi, np. That was what i wanted to test.

                      So if we create it before windows is fully shown we get bug?

                      But if you create in button_click , it works?

                      T 1 Reply Last reply 4 May 2016, 13:41
                      0
                      • M mrjj
                        4 May 2016, 13:37

                        @Tikitko
                        Hi, np. That was what i wanted to test.

                        So if we create it before windows is fully shown we get bug?

                        But if you create in button_click , it works?

                        T Offline
                        T Offline
                        Tikitko
                        wrote on 4 May 2016, 13:41 last edited by
                        #13

                        @mrjj Yes, once checked, it is so ...

                        M 1 Reply Last reply 4 May 2016, 13:44
                        0
                        • T Tikitko
                          4 May 2016, 13:41

                          @mrjj Yes, once checked, it is so ...

                          M Offline
                          M Offline
                          mrjj
                          Lifetime Qt Champion
                          wrote on 4 May 2016, 13:44 last edited by
                          #14

                          @Tikitko
                          very strange!
                          I though showEvent would been same as clicked.
                          Try timer so that we first create after window fully shown.

                          // in constructor
                          QTimer *timer = new QTimer(this);
                          connect(timer, SIGNAL(timeout()), this, SLOT(nowcreate()));
                          timer->start(4000);
                          }

                          void MainWindow::nowcreate() << add this to .h also
                          {
                          qDebug() << "nowcreate";
                          // create here
                          QAxWidget *Test = new QAxWidget(this);
                          ..
                          }

                          T 1 Reply Last reply 4 May 2016, 13:47
                          0
                          • M mrjj
                            4 May 2016, 13:44

                            @Tikitko
                            very strange!
                            I though showEvent would been same as clicked.
                            Try timer so that we first create after window fully shown.

                            // in constructor
                            QTimer *timer = new QTimer(this);
                            connect(timer, SIGNAL(timeout()), this, SLOT(nowcreate()));
                            timer->start(4000);
                            }

                            void MainWindow::nowcreate() << add this to .h also
                            {
                            qDebug() << "nowcreate";
                            // create here
                            QAxWidget *Test = new QAxWidget(this);
                            ..
                            }

                            T Offline
                            T Offline
                            Tikitko
                            wrote on 4 May 2016, 13:47 last edited by
                            #15

                            @mrjj This work!

                            M 1 Reply Last reply 4 May 2016, 13:48
                            1
                            • T Tikitko
                              4 May 2016, 13:47

                              @mrjj This work!

                              M Offline
                              M Offline
                              mrjj
                              Lifetime Qt Champion
                              wrote on 4 May 2016, 13:48 last edited by
                              #16

                              @Tikitko
                              ok
                              so window must be fully shown to make it happy.
                              Good testing :)

                              T 1 Reply Last reply 4 May 2016, 13:52
                              0
                              • M mrjj
                                4 May 2016, 13:48

                                @Tikitko
                                ok
                                so window must be fully shown to make it happy.
                                Good testing :)

                                T Offline
                                T Offline
                                Tikitko
                                wrote on 4 May 2016, 13:52 last edited by Tikitko 5 Apr 2016, 13:53
                                #17

                                @mrjj Thank you very much for your help! So show window, and then create a widget ... So still the question, it is a bug Qt or something else? The problem can be considered solved only in the bug tracker you need to add ...

                                M 1 Reply Last reply 4 May 2016, 13:55
                                0
                                • T Tikitko
                                  4 May 2016, 13:52

                                  @mrjj Thank you very much for your help! So show window, and then create a widget ... So still the question, it is a bug Qt or something else? The problem can be considered solved only in the bug tracker you need to add ...

                                  M Offline
                                  M Offline
                                  mrjj
                                  Lifetime Qt Champion
                                  wrote on 4 May 2016, 13:55 last edited by
                                  #18

                                  @Tikitko
                                  You are most welcome.
                                  well I think its a bug but not sure.
                                  When bug comes, it seems to me it hangs. That seems like bug.

                                  Oh I forgot to ask.
                                  What is {8856f961-340a-11d0-a96b-00c04fd705a2} ?

                                  T 2 Replies Last reply 4 May 2016, 13:57
                                  0
                                  • M mrjj
                                    4 May 2016, 13:55

                                    @Tikitko
                                    You are most welcome.
                                    well I think its a bug but not sure.
                                    When bug comes, it seems to me it hangs. That seems like bug.

                                    Oh I forgot to ask.
                                    What is {8856f961-340a-11d0-a96b-00c04fd705a2} ?

                                    T Offline
                                    T Offline
                                    Tikitko
                                    wrote on 4 May 2016, 13:57 last edited by
                                    #19

                                    @mrjj this is Internet Explorer but in any case, the error with any object in QAxWidget...

                                    1 Reply Last reply
                                    1
                                    • M mrjj
                                      4 May 2016, 13:55

                                      @Tikitko
                                      You are most welcome.
                                      well I think its a bug but not sure.
                                      When bug comes, it seems to me it hangs. That seems like bug.

                                      Oh I forgot to ask.
                                      What is {8856f961-340a-11d0-a96b-00c04fd705a2} ?

                                      T Offline
                                      T Offline
                                      Tikitko
                                      wrote on 5 May 2016, 12:33 last edited by
                                      #20

                                      @mrjj Hello, another mament noticed everything was decided widget loading after displaying the window, but if you minimize the window and deploy the freeze button again ...

                                      M 1 Reply Last reply 5 May 2016, 12:34
                                      0
                                      • T Tikitko
                                        5 May 2016, 12:33

                                        @mrjj Hello, another mament noticed everything was decided widget loading after displaying the window, but if you minimize the window and deploy the freeze button again ...

                                        M Offline
                                        M Offline
                                        mrjj
                                        Lifetime Qt Champion
                                        wrote on 5 May 2016, 12:34 last edited by
                                        #21

                                        @Tikitko
                                        Ehh. not sure I read that correctly.

                                        You say that if made with button, then bug dont show, but if you minimize and maxi window again, bug comes back?

                                        T 1 Reply Last reply 5 May 2016, 12:52
                                        0
                                        • M mrjj
                                          5 May 2016, 12:34

                                          @Tikitko
                                          Ehh. not sure I read that correctly.

                                          You say that if made with button, then bug dont show, but if you minimize and maxi window again, bug comes back?

                                          T Offline
                                          T Offline
                                          Tikitko
                                          wrote on 5 May 2016, 12:52 last edited by
                                          #22

                                          @mrjj If i minimize a window, and deploy it, the problem returns

                                          M 1 Reply Last reply 5 May 2016, 12:57
                                          0

                                          12/24

                                          4 May 2016, 13:37

                                          • Login

                                          • Login or register to search.
                                          12 out of 24
                                          • First post
                                            12/24
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved