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
Forum Updated to NodeBB v4.3 + New Features

FramelessWindowHint freezes form with QAxWidget

Scheduled Pinned Locked Moved Unsolved General and Desktop
qaxwidgetframelesswindowbug
24 Posts 3 Posters 12.4k Views 1 Watching
  • 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 Offline
    M Offline
    mrjj
    Lifetime Qt Champion
    wrote on 4 May 2016, 12:31 last edited by
    #2

    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 1 Reply Last reply 4 May 2016, 12:43
    0
    • 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

                                          11/24

                                          4 May 2016, 13:34

                                          • Login

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