Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. QML and Qt Quick
  4. Unable to assign [undefined] to int during customizing ScrollBar
Forum Updated to NodeBB v4.3 + New Features

Unable to assign [undefined] to int during customizing ScrollBar

Scheduled Pinned Locked Moved Unsolved QML and Qt Quick
17 Posts 6 Posters 1.5k 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.
  • L LS-KS

    @Kamichanw ScrollView is a Layout. So please try

    Layout.preferredWidth
    

    instead of width

    K Offline
    K Offline
    Kamichanw
    wrote on last edited by Kamichanw
    #7

    @LS-KS I cannot understand... The width we discussed earlier is the width of ScrollBar. And ScrollBar is assigned to ScrollBar.vertical which is a attached property of ScrollView. It shouldn't be a child item of ScrollView.

    What's more, when the Rectangle is assigned to contentItem, it doesn't have attached property named Layout.

    JonBJ L 2 Replies Last reply
    0
    • K Kamichanw

      @sierdzio I don't know. As you can see, the error message shows that error occurred in qrc:/qt-project.org/imports/QtQuick/Controls/Windows/ScrollBar.qml which is a qt internal file.

      sierdzioS Offline
      sierdzioS Offline
      sierdzio
      Moderators
      wrote on last edited by
      #8

      @Kamichanw said in Unable to assign [undefined] to int during customizing ScrollBar:

      @sierdzio I don't know. As you can see, the error message shows that error occurred in qrc:/qt-project.org/imports/QtQuick/Controls/Windows/ScrollBar.qml which is a qt internal file.

      Well, but looking at it will tell you which property assignment has failed. Then you will know which object in your code is undefined.

      (Z(:^

      K 1 Reply Last reply
      0
      • K Kamichanw

        @LS-KS I cannot understand... The width we discussed earlier is the width of ScrollBar. And ScrollBar is assigned to ScrollBar.vertical which is a attached property of ScrollView. It shouldn't be a child item of ScrollView.

        What's more, when the Rectangle is assigned to contentItem, it doesn't have attached property named Layout.

        JonBJ Offline
        JonBJ Offline
        JonB
        wrote on last edited by
        #9

        @Kamichanw
        If you cannot track down which item it is in your code, maybe try commenting each one out till you find out?

        K 1 Reply Last reply
        0
        • K Kamichanw

          @LS-KS I cannot understand... The width we discussed earlier is the width of ScrollBar. And ScrollBar is assigned to ScrollBar.vertical which is a attached property of ScrollView. It shouldn't be a child item of ScrollView.

          What's more, when the Rectangle is assigned to contentItem, it doesn't have attached property named Layout.

          L Offline
          L Offline
          LS-KS
          wrote on last edited by
          #10

          @Kamichanw
          I never used that ScrollBar Item so I may be wrong.
          In general when you place something into a Layout object (like ScrollView) you can't use width and height but must use Layout -properties like preferredWidth etc.
          You used width in your calculations.

          K 1 Reply Last reply
          0
          • JonBJ JonB

            @Kamichanw
            If you cannot track down which item it is in your code, maybe try commenting each one out till you find out?

            K Offline
            K Offline
            Kamichanw
            wrote on last edited by
            #11

            @JonB Of course, I have tried this strategy. However, even I commented all code in Rectangle, the problem persists.

            1 Reply Last reply
            0
            • L LS-KS

              @Kamichanw
              I never used that ScrollBar Item so I may be wrong.
              In general when you place something into a Layout object (like ScrollView) you can't use width and height but must use Layout -properties like preferredWidth etc.
              You used width in your calculations.

              K Offline
              K Offline
              Kamichanw
              wrote on last edited by
              #12

              @LS-KS As you can see in qt doc, it uses width as well.

              1 Reply Last reply
              0
              • sierdzioS sierdzio

                @Kamichanw said in Unable to assign [undefined] to int during customizing ScrollBar:

                @sierdzio I don't know. As you can see, the error message shows that error occurred in qrc:/qt-project.org/imports/QtQuick/Controls/Windows/ScrollBar.qml which is a qt internal file.

                Well, but looking at it will tell you which property assignment has failed. Then you will know which object in your code is undefined.

                K Offline
                K Offline
                Kamichanw
                wrote on last edited by
                #13

                @sierdzio Yes, I hope to open that file as well, but when I click the hyperlink in QML debugger console, it shows that
                b9f4aaa2-8905-4d8e-9c2a-70abbe86b193-image.png
                I also tried to search ScrollBar.qml in qt source directory, but there are too many file named ScrollBar.qml so that I don't know where to start.

                JonBJ 1 Reply Last reply
                0
                • K Kamichanw

                  @sierdzio Yes, I hope to open that file as well, but when I click the hyperlink in QML debugger console, it shows that
                  b9f4aaa2-8905-4d8e-9c2a-70abbe86b193-image.png
                  I also tried to search ScrollBar.qml in qt source directory, but there are too many file named ScrollBar.qml so that I don't know where to start.

                  JonBJ Offline
                  JonBJ Offline
                  JonB
                  wrote on last edited by
                  #14

                  @Kamichanw
                  Is there a directory something like QtQuick\Controls\Windows in the source tree? If so, how many ScrollBar.qml files are there in that directory?

                  1 Reply Last reply
                  0
                  • K Offline
                    K Offline
                    Kamichanw
                    wrote on last edited by
                    #15

                    Hey guys, I opened C:\Qt\6.4.2\Src\qtdeclarative\src\quickcontrols2\windows\ScrollBar.qml . I think it might be the correct ScrollBar.qml. The line 33 uses contentITem.transitionDuration. But I cannot set in my file directly.

                    NativeStyle.ScrollBar {
                            // Fade a hovered-looking version of the handle
                            // on top of the default handle when hovering it
                            x: contentItem.x
                            y: contentItem.y
                            z: 1
                            width: contentItem.width
                            height: contentItem.height
                            control: controlRoot
                            subControl: NativeStyle.ScrollBar.Handle
                            overrideState: NativeStyle.StyleItem.AlwaysHovered
                            opacity: controlRoot.hovered || control.pressed ? 1 : 0
                            visible: contentItem instanceof NativeStyle.StyleItem--
                            Behavior on opacity { NumberAnimation { duration: contentItem.transitionDuration } } // line 33
                        }
                    
                    GrecKoG 1 Reply Last reply
                    0
                    • K Kamichanw

                      Hey guys, I opened C:\Qt\6.4.2\Src\qtdeclarative\src\quickcontrols2\windows\ScrollBar.qml . I think it might be the correct ScrollBar.qml. The line 33 uses contentITem.transitionDuration. But I cannot set in my file directly.

                      NativeStyle.ScrollBar {
                              // Fade a hovered-looking version of the handle
                              // on top of the default handle when hovering it
                              x: contentItem.x
                              y: contentItem.y
                              z: 1
                              width: contentItem.width
                              height: contentItem.height
                              control: controlRoot
                              subControl: NativeStyle.ScrollBar.Handle
                              overrideState: NativeStyle.StyleItem.AlwaysHovered
                              opacity: controlRoot.hovered || control.pressed ? 1 : 0
                              visible: contentItem instanceof NativeStyle.StyleItem--
                              Behavior on opacity { NumberAnimation { duration: contentItem.transitionDuration } } // line 33
                          }
                      
                      GrecKoG Offline
                      GrecKoG Offline
                      GrecKo
                      Qt Champions 2018
                      wrote on last edited by
                      #16

                      @Kamichanw You should not customize native styles.
                      https://www.youtube.com/watch?v=mImptIBmWW0&t=1179s

                      K 1 Reply Last reply
                      0
                      • GrecKoG GrecKo

                        @Kamichanw You should not customize native styles.
                        https://www.youtube.com/watch?v=mImptIBmWW0&t=1179s

                        K Offline
                        K Offline
                        Kamichanw
                        wrote on last edited by
                        #17

                        @GrecKo But how can I customize ScrollBar of ScrollView? Should I have to implement my own ScrollView?

                        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