BlinCT
Қаң. 28, 2017, 6:16 Т.Қ.

Подстановка контента в TabBar QML из других qml файлов

TabBar, TabButton, QML

Всем привет. Вопрос в работе TabBar, TabButton и контента из внешнего qml файла Имеется main.qml в котором мы создаем

 header: TabBar
    {
        id: tabBar
        TabButton
        {
            text: qsTr("Test1")
        }
        TabButton
        {
            text: qsTr("Test2")
        }
        TabButton
        {
            text: qsTr("Test3")
        }
    } //tabbar
Мы имеем нормальный набор вкладок. И вот теперь нужно в каждую вкладку запихнуть готовый контент из другого файла. Наткнулся на SwipeView но это вроде как не то что надо, выглядит как будто он выстроил их по порядку. А нужно получить именно в первой вкладке один контент, в другой вкладке другой и так далее. Такое разделение связано с тем что контент каждой вкладки не должен никак контактировать с другими. Буду признателен за помощь и советы. Или может другие варианты.
0

Ол саған ұнайды ма? Әлеуметтік желілерде бөлісіңіз!

2
BlinCT
  • Қаң. 28, 2017, 6:17 Т.Қ.

Забыл добавить что версия Qt 5.8

    Evgenii Legotckoi
    • Қаң. 28, 2017, 10:49 Т.Қ.
    • Жауап шешім ретінде белгіленді.

    Можно воспользоваться компонентом Loader, вместо SwipeView.

    import QtQuick 2.7
    import QtQuick.Controls 2.0
    import QtQuick.Layouts 1.0
    
    ApplicationWindow {
        visible: true
        width: 640
        height: 480
        title: qsTr("Hello World")
    
        header: TabBar {
            id: tabBar
            TabButton {
                text: qsTr("Test_1")
            }
            TabButton {
                text: qsTr("Test_2")
            }
            TabButton {
                text: qsTr("Test_3")
            }
    
            onCurrentIndexChanged: {
                switch (currentIndex)
                {
                case 0:
                    loader.source = "qrc:/Test_1.qml"
                    break;
                case 1:
                    loader.source = "qrc:/Test_2.qml"
                    break;
                case 2:
                    loader.source = "qrc:/Test_3.qml"
                    break;
                }
    
            }
        }
    
        Loader {
            id: loader
            anchors.fill: parent
            source: "qrc:/Test_1.qml"
        }
    }

      Пікірлер

      Тек рұқсаты бар пайдаланушылар ғана пікір қалдыра алады.
      Кіріңіз немесе Тіркеліңіз