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. Looks like the SIGNAL loadFinished(bool) is not emitted anymore with Qt 6.8.1

Looks like the SIGNAL loadFinished(bool) is not emitted anymore with Qt 6.8.1

Scheduled Pinned Locked Moved Solved General and Desktop
67 Posts 5 Posters 6.0k 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.
  • V Offline
    V Offline
    Volker75
    wrote on 18 Jan 2025, 21:43 last edited by
    #56

    That line is already included.
    See timetableprintform.cpp line 42.
    And it is only working with Qt 6.7.2. Not with Qt 6.8.1.

    1 Reply Last reply
    0
    • V Offline
      V Offline
      Volker75
      wrote on 18 Jan 2025, 21:51 last edited by
      #57

      It's a bit funny that it work in that line you added.
      But i can't write it there, since in the real application is a big dialog where you can select of different settings and timetables.
      So I can't call it from there.
      I must call it from line 42 and there it is not working anymore.

      1 Reply Last reply
      0
      • V Offline
        V Offline
        Volker75
        wrote on 18 Jan 2025, 21:53 last edited by Volker75
        #58

        So the bug is, that this line doesn't work anymore. But why? I need a connect. I can't call it in the constructor like you done it.

        connect(pbPrintPreviewFull, SIGNAL(clicked()), this, SLOT(printPre
        

        You must of course press on preview button!

        1 Reply Last reply
        0
        • V Offline
          V Offline
          Volker75
          wrote on 18 Jan 2025, 22:21 last edited by Volker75
          #59

          BTW: I don't get the "The cached device pixel ratio value was stale on window update. Please file a QTBUG which explains how to reproduce." information. Are you using Windows, Linux or MacOS?
          I am currently trying Linux only and Linux doesn't work anymore :-(

          1 Reply Last reply
          0
          • V Offline
            V Offline
            Volker75
            wrote on 18 Jan 2025, 22:28 last edited by
            #60

            Ah... Sorry. Reading your mail once again.
            Yes, then also the preview button is working. Strange. But the solution doesn't work, since there is a big white preview first and i can't hide it. And after printpreview at should also close, but it stays in the window. So that is not useable. It should work as with Qt 6.7.2.

            1 Reply Last reply
            0
            • H Offline
              H Offline
              hskoglund
              wrote on 19 Jan 2025, 00:21 last edited by
              #61

              Hi, the reason the behavior differs between Qt 6.7.2 and Qt 6.8.1 is probably because you're creating the QWebEngineView with your QDialog derived TimetablePrintForm, i.e. not a QWdiget.

              Easiest solution is just to omit any parent, like this:

              ,,,
              viewPreview2 = new QWebEngineView(); //notVisible. But must stay alive for printing.
              viewPreview2->hide();
              ...
              

              It was probably just good luck that allowed a QDialog flavoed parent to work anyway in 6.7.2 but in 6.8.1 you run out of it :-)

              1 Reply Last reply
              1
              • V Offline
                V Offline
                Volker75
                wrote on 19 Jan 2025, 02:30 last edited by
                #62

                I fear I don't understand it 100%, but it is working now!
                Thank you so much!
                You have earned my announce reward. Please tell me your PayPal (email) or IBAN here or write me a private message and I will sent you the money..
                Can you also tell if I need to care about deleting it now myself?
                So do I need to write somewhere "delete viewPreview2" myself now or does the garbage collector already cares about it?

                1 Reply Last reply
                0
                • H Offline
                  H Offline
                  hskoglund
                  wrote on 19 Jan 2025, 02:42 last edited by
                  #63

                  Re. the delete: easiest is to do that in TimetablePrintForm's destructor:

                  ...
                  TimetablePrintForm::~TimetablePrintForm(){
                      delete viewPreview2;
                  }
                  ...
                  

                  (in C++ you have to take out the garbage yourself, no GC available)

                  1 Reply Last reply
                  1
                  • V Volker75 has marked this topic as solved on 19 Jan 2025, 02:46
                  • V Offline
                    V Offline
                    Volker75
                    wrote on 19 Jan 2025, 02:47 last edited by
                    #64

                    Thank you! I guess the other bug that I wrote some time ago and wrote a link here is because of the same bug. I well mark the other topic from me as solved as soon as I am able the check that also. Thank you!

                    1 Reply Last reply
                    0
                    • V Offline
                      V Offline
                      Volker75
                      wrote on 19 Jan 2025, 08:32 last edited by Volker75
                      #65

                      Last question:
                      I saw in the documentation, that QWebEngineView() has also a close().
                      Should I close() before delete? (Or only close() and not delete, but I guess that is wrong)

                      1 Reply Last reply
                      0
                      • H Offline
                        H Offline
                        hskoglund
                        wrote on 19 Jan 2025, 13:40 last edited by
                        #66

                        Since your QWebEngineView is hidden anyway (which is essentially what close() does), I don't think a close() is needed, i.e. the delete will suffice.

                        1 Reply Last reply
                        0
                        • V Offline
                          V Offline
                          Volker75
                          wrote on 19 Jan 2025, 13:56 last edited by
                          #67

                          Thank you!

                          1 Reply Last reply
                          0

                          65/67

                          19 Jan 2025, 08:32

                          • Login

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