当前位置: 代码迷 >> QT开发 >> Qt4.8.0+Qt3D 升级到 Qt5.0.0 Repeater生成Item3D不成功解决思路
  详细解决方案

Qt4.8.0+Qt3D 升级到 Qt5.0.0 Repeater生成Item3D不成功解决思路

热度:499   发布时间:2016-04-25 04:24:08.0
Qt4.8.0+Qt3D 升级到 Qt5.0.0 Repeater生成Item3D不成功
原来程序是基于Qt4.8.0 +  Qt3D 1.0,有个Repeater把ListModel中生成Item3D的功能,效果如下:


程序升级到Qt5.0.0 也就是第一个beta版后,功能不能实现了。尝试了有两天了,在老版本上代码运行正常,copy到新版后,不能实现功能。

哪个高手帮忙看看是哪里出了问题? 莫非是程序bug??

以下是代码:
import QtQuick 2.0
import Qt3D 2.0
import Qt3D.Shapes 2.0

Viewport {
        width:  600
        height: 400

    ListModel {
            id: mostvisited11
                ListElement { itemName: "index1"   ;filePath:"pics/1.jpg"   }
                ListElement { itemName: "index2"        ;filePath:"pics/2.jpg"   }
                ListElement { itemName: "index3"        ;filePath:"pics/3.jpg"   }
                ListElement { itemName: "index4"        ;filePath:"pics/2.jpg"   }
                ListElement { itemName: "index5"        ;filePath:"pics/3.jpg"   }
    }

    //中心立方体
    Cube { effect: Effect {  color:"red";  blending: true} }

    Component {
        id: octoDisplayDelegate
        Item3D {
            transform: [
                Translation3D { translate: Qt.vector3d(0, 0, 2.6) },
                Rotation3D {     axis: Qt.vector3d(0, 1, 0);
                                          angle: (360 / 16) * (index * 2 + 1) }
           ]
            Item3D {
               Cube { effect: Effect {  color:"red";  blending: true}
               Text { id: name1; x:index * 79; text: itemName ;color: "red" }
                }
            }
        }
    }

    Repeater {
         delegate:  octoDisplayDelegate
  相关解决方案