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. Compose pointer to property of object
Forum Updated to NodeBB v4.3 + New Features

Compose pointer to property of object

Scheduled Pinned Locked Moved Solved General and Desktop
c++pointerobjectsproperties
25 Posts 3 Posters 9.4k Views 2 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.
  • McLionM Offline
    McLionM Offline
    McLion
    wrote on last edited by
    #16

    Thanks for the heads-up.
    I'll do some testing and experiment.

    1 Reply Last reply
    0
    • McLionM Offline
      McLionM Offline
      McLion
      wrote on last edited by
      #17

      So far, everything related to this threads question and the QMap as solution seems to work.

      I stumbled over something else while relacing the QwebView from the Designer by my 'on-demand' created one:
      I can not load an url, it crashes with sig11.

      I get the following connect error on bootup:

      QMetaObject::connectSlotsByName: No matching signal for on_webGUI_loadFinished(bool)
      

      which I dont understand and may be the cause.
      I have connected:

      connect(webGUI, SIGNAL(loadFinished(bool)), this, SLOT(on_webGUI_loadFinished(bool)));
      

      and in *.h as private slot:

      void on_webGUI_loadFinished(bool arg1);
      

      This worked before, with the QWebView from the Designer.
      Any idea? Thanks.

      1 Reply Last reply
      0
      • mrjjM Offline
        mrjjM Offline
        mrjj
        Lifetime Qt Champion
        wrote on last edited by
        #18

        @McLion said:

        no matching signal for on_webGUI_loadFinished(bool)

        Hi
        this warning comes as you name slot on_XXX
        This will trigger Qt auto connect feature so when you use
        a concrete connect you should rename it so it dont
        start with on__
        (right click it- refactor->rename)

        also please do
        qDebug() << "loadfin:" << connect(webGUI, SIGNAL(loadFinixxxx

        to see if it returns true; ( as in , it can connect)

        1 Reply Last reply
        1
        • McLionM Offline
          McLionM Offline
          McLion
          wrote on last edited by
          #19

          I wasn't aware that using on_ in the name will trigger any functionality!
          Refactoring solved this problem - Thanks !

          However, the signal 11 crash when trying to load an url seems to have some other cause .... I'm searching ;-)

          1 Reply Last reply
          0
          • jsulmJ Offline
            jsulmJ Offline
            jsulm
            Lifetime Qt Champion
            wrote on last edited by
            #20

            You're most probably dereferencing a null pointer. Signal 11 means SIGSEGV (segmentation error).

            https://forum.qt.io/topic/113070/qt-code-of-conduct

            McLionM 1 Reply Last reply
            0
            • jsulmJ jsulm

              You're most probably dereferencing a null pointer. Signal 11 means SIGSEGV (segmentation error).

              McLionM Offline
              McLionM Offline
              McLion
              wrote on last edited by
              #21

              @jsulm
              Yes - Thanks . Problem loacted, but not yet solved:

              void QTGUI_MainWindow::populateJavaScriptWindowObject()
              {
                QWebView * webGUI = qobject_cast<QWebView *>(sender());
                webGUI->page()->mainFrame()->addToJavaScriptWindowObject("NativeBridge", this);
              }
              

              The sender is the JS and not the QWebView and so I do not get the pointer to the QWebView that I need. Instead, the pointer is 0x0 and then - of course - the addToJ... crashes.

              Any idea how I get the pointer to the QWebView from which the JS is sending?
              Thanks

              1 Reply Last reply
              0
              • jsulmJ Offline
                jsulmJ Offline
                jsulm
                Lifetime Qt Champion
                wrote on last edited by
                #22

                What is JS?

                https://forum.qt.io/topic/113070/qt-code-of-conduct

                McLionM 1 Reply Last reply
                0
                • jsulmJ jsulm

                  What is JS?

                  McLionM Offline
                  McLionM Offline
                  McLion
                  wrote on last edited by
                  #23

                  @jsulm
                  JavaScript (in/from QWebKit ... more precise page()->mainFrame().

                  1 Reply Last reply
                  0
                  • McLionM Offline
                    McLionM Offline
                    McLion
                    wrote on last edited by
                    #24

                    I posted this as a separate question in the WebKit group.

                    1 Reply Last reply
                    0
                    • McLionM Offline
                      McLionM Offline
                      McLion
                      wrote on last edited by
                      #25

                      Got it solved :-)

                      QWebFrame * webGUIframe = qobject_cast<QWebFrame >(sender());
                      QWebView * webGUI = (QWebView
                      )(webGUIframe->parent())->parent();
                      webGUI->page()->mainFrame()->addToJavaScriptWindowObject("NativeBridge", this);

                      1 Reply Last reply
                      0

                      • Login

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