2012-11-26 35 views
1

我正在设计Spinner控件(或者您可以Scollable项目列表)。其功能方面的工作很好QML中的Pathview问题

主要问题是我想在滚动项目中创建一个圆形运动的感觉。所以为了在滚动列表中给出这种效果,我们决定在前面&拖尾项目大小比当前项目要小

我真的很努力得到不同大小的项目。任何人都可以告诉我如何继续使用相同的方法。

下面是我的代码片段

ContentModel.qml 

import QtQuick 1.1 

Rectangle { 
    property alias model: view.model 
    property alias delegate: view.delegate 
    property real itemHeight: height/5 

    clip: true 

    PathView { 
     id: view 
     anchors.fill: parent 
     //number of items visible on the path at any one time. 
     pathItemCount: height/itemHeight 
     // Ensuring the selected componenet to be at the center 
     preferredHighlightBegin: 0.5 
     preferredHighlightEnd: 0.5 

     // select maximum distance from the path that initiate mouse dragging 
     dragMargin: view.width 


     //Declare the path of list 
     path: Path { 
      startX: view.width/2; startY: -itemHeight/2 
      PathLine { x: view.width/2; y: view.pathItemCount*itemHeight + itemHeight/.8} 
     } 
    } 
} 

的main.qml片断

main.qml 

....... 
ContentModel{ 
     id: ContentModel_spinner 
     width: ContentModel_scroll.width; height: ContentModel_scroll.height 
     focus: true 
     model: 20 
     delegate: Text { font.pixelSize: index === ContentModel_spinner.currentIndex ? sec_spinner.height/4 : ContentModel_spinner.height/4.5; text: formatindex(index); height: ContentModel_scroll.height } 
      } 

回答

3

检查教程here。他们给出了不同形状的路径视图的例子。