自学内容网 自学内容网

qt低版本中列表同步滚动

qml 同步滚动
qt5.15版本中scrollView没有同步滚动信号。采用Flickable滑动的信号,在Flickable中使用ScrollBar自定义滚动条,滚动条可以附加到任何 Flickable。使用Flickable中的onContentYChanged和onContentXChanged信号,并且设置滚动方向flickableDirection: Flickable.HorizontalAndVerticalFlick,从而同步其他的Flickable。

https://blog.csdn.net/kenfan1647/article/details/122522063

                            Flickable{

                                 id: flickable
                                 width: parent.width-445
                                 height: parent.height
                                 // onVerticalVelocityChanged: leftFlickable.contentY = contentY
                                 // onHorizontalVelocityChanged: ipHeaderFlickable.contentX = contentX
                                 clip: true
                                 //boundsBehavior: Flickable.StopAtBounds
                                 contentWidth: frame.implicitWidth
                                 contentHeight: frame.implicitHeight
                                 //滚动方向
                                 flickableDirection: Flickable.HorizontalAndVerticalFlick

                                 // Keys.onUpPressed: vbar.decrease()
                                 // Keys.onDownPressed: vbar.increase()

                                 ScrollBar.vertical: ScrollBar {
                                     id: vbar
                                     orientation: Qt.Vertical
                                     policy: ScrollBar.AsNeeded

                                 }
                                //同步其他Flickable
                                 onContentYChanged: {
                                     leftFlickable.contentY = contentY
                                 }
                                 onContentXChanged: {
                                     ipHeaderFlickable.contentX = contentX
                                 }

                                 ScrollBar.horizontal: ScrollBar {
                                     id: hbar
                                     orientation: Qt.Horizontal
                                     policy: ScrollBar.AsNeeded


                                 }

                                 //内容
                                 Column{
                                     id: frame
                                     width: parent.width
                                     height: parent.height

                                     Repeater{
                                         id: ipList
                                         model: local_ml_rep
                                         ...
                                         }
                                         }
                                         }

原文地址:https://blog.csdn.net/twtongwei/article/details/142458574

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!