代码之家  ›  专栏  ›  技术社区  ›  Davita

多视图QML桌面应用程序的最佳实践?

  •  1
  • Davita  · 技术社区  · 7 年前

    enter image description here

    值得一提的是,在视图导航期间,不应破坏实际视图。国家应该得到保护。基本上,我尝试重新创建选项卡控件,除了按钮放置。

    现在的问题是,我之前没有QML的经验,我想寻求指导。哪个控件更适合此场景?我检查了SwipeView、TabControl等,但很容易混淆。如果你能推荐我应该研究哪个领域,我将不胜感激。

    谢谢

    1 回复  |  直到 7 年前
        1
  •  1
  •   dtech    7 年前

    好的,它可以简单到将四个视图放在一起,隐藏除活动视图之外的所有视图。然后创建一个按钮组,以确定哪些视图处于活动状态:

    ApplicationWindow {
      id: window
      visible: true
      width: 640
      height: 480
      ButtonGroup { buttons: buts.children }
      Column {
        Row {
          id: buts
          Button {
            id: v1
            checkable: true
            checked: true
            text: "red view"
          }
          Button {
            id: v2
            checkable: true
            text: "green view"
          }
          Button {
            id: v3
            checkable: true
            text: "blue view"
          }
        }
        Item {
          width: 300
          height: 300
          Rectangle {
            anchors.fill: parent
            color: "red"
            visible: v1.checked
          }
          Rectangle {
            anchors.fill: parent
            color: "green"
            visible: v2.checked
          }
          Rectangle {
            anchors.fill: parent
            color: "blue"
            visible: v3.checked
          }
        }
      }
    }